Table of Contents
1. Opcache
2. Use a new compiler
3. HugePage
4. Opcache file cache
5. PGO
Home Backend Development PHP7 Learn about several settings to optimize PHP7 performance

Learn about several settings to optimize PHP7 performance

Jun 16, 2021 am 09:22 AM
opcache php7

This article will take you through several settings to optimize the performance of PHP7. It has certain reference value. Friends in need can refer to it. I hope it will be helpful to everyone.

Learn about several settings to optimize PHP7 performance

PHP7 has been released. As the largest version upgrade and the largest performance upgrade of PHP in 10 years, PHP7 has shown obvious performance improvements in multiple tests. However, , in order to maximize its performance, I still want to remind you of a few things.

PHP7 VS PHP5.6

1. Opcache

Remember to enable Zend Opcache, because PHP7 is faster even without Opcache than PHP-5.6 with Opcache enabled, so some people did not enable Opcache during the previous testing period. Enabling Opcache is very simple, in PHP Add to the .ini configuration file:

zend_extension=opcache.so
opcache.enable=1
opcache.enable_cli=1"
Copy after login

2. Use a new compiler

Use a newer compiler, GCC 4.8 or above is recommended, because only GCC 4.8 or above PHP will open Global Register for opline and execute_data support, this will bring about 5% performance improvement (measured from the QPS perspective of Wordpres)

In fact, GCC versions before 4.8 also support it, but we found that it supports bugs, so it must be This feature will only be enabled in versions 4.8 and above.

3. HugePage

My previous article also introduced: Hugepage to make your PHP7 faster, first enable HugePages in the system, and then Turn on Opcache's huge_code_pages.

Take my CentOS 6.5 as an example, allocate 512 reserved huge page memory through:

$sudo sysctl vm.nr_hugepages=512
Copy after login

:

$ cat /proc/meminfo  | grep Huge
AnonHugePages:    106496 kB
HugePages_Total:     512
HugePages_Free:      504
HugePages_Rsvd:       27
HugePages_Surp:        0
Hugepagesize:       2048 kB
Copy after login

Then in php.ini Add:

opcache.huge_code_pages=1
Copy after login

In this way, PHP will use large memory pages to save its own text segment and the huge in memory allocation, reducing TLB misses and thereby improving performance.

4. Opcache file cache

Enable Opcache File Cache (experimental). By enabling this, we can let Opcache cache the opcode cache in an external file. For some scripts, there will be a significant performance improvement.
Add:

opcache.file_cache=/tmp
Copy after login

to php.ini so that PHP will cache some Opcode binary export files in the /tmp directory, which can exist across the PHP life cycle.

5. PGO

My previous article: Make your PHP7 faster (GCC PGO) also introduced that if your PHP is specifically for one project, such as just for your WordPress, or Drupal, or something else, then You can try to use PGO to improve PHP, specifically to improve the performance of your project.

Specifically, take wordpress 4.1 as the optimization scenario. First, when compiling PHP:

$ make prof-gen
Copy after login

Then use your project to train PHP, for example, for WordPress:

$ sapi/cgi/php-cgi -T 100 /home/huixinchen/local/www/htdocs/wordpress/index.php >/dev/null
Copy after login

That is, let php-cgi run 100 times on the WordPress homepage, thereby generating some profile information in the process.

Finally:

$ make prof-clean$ make prof-use && make install
Copy after login

The PHP7 you compile at this time is the highest performance compiled version tailored for your project.

That’s all for now, I will add more when I think of it later. Everyone is welcome to try it, thanks

Recommended learning: php video tutorial

The above is the detailed content of Learn about several settings to optimize PHP7 performance. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: How To Unlock Everything In MyRise
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to install opcache in centos php How to install opcache in centos php Jan 19, 2023 am 09:50 AM

How to install opcache in centos php: 1. Execute the "yum list php73* | grep opcache" command; 2. Install opcache through "yum install php73-php-opcache.x86_64"; 3. Use "find / -name opcache.so" Just find the location of "opcache.so" and move it to php's extension directory.

An article explaining the principle and use of PHP opcache in detail An article explaining the principle and use of PHP opcache in detail Mar 22, 2023 pm 04:18 PM

This article brings you relevant knowledge about PHP opcache. It mainly talks about how to understand the OPCache function and how to use it. Friends who are interested can take a look below. I hope it will be helpful to everyone.

What should I do if the plug-in is installed in php7.0 but it still shows that it is not installed? What should I do if the plug-in is installed in php7.0 but it still shows that it is not installed? Apr 02, 2024 pm 07:39 PM

To resolve the plugin not showing installed issue in PHP 7.0: Check the plugin configuration and enable the plugin. Restart PHP to apply configuration changes. Check the plugin file permissions to make sure they are correct. Install missing dependencies to ensure the plugin functions properly. If all other steps fail, rebuild PHP. Other possible causes include incompatible plugin versions, loading the wrong version, or PHP configuration issues.

How to solve the problem when php7 detects that the tcp port is not working How to solve the problem when php7 detects that the tcp port is not working Mar 22, 2023 am 09:30 AM

In php5, we can use the fsockopen() function to detect the TCP port. This function can be used to open a network connection and perform some network communication. But in php7, the fsockopen() function may encounter some problems, such as being unable to open the port, unable to connect to the server, etc. In order to solve this problem, we can use the socket_create() function and socket_connect() function to detect the TCP port.

How to install mongo extension in php7.0 How to install mongo extension in php7.0 Nov 21, 2022 am 10:25 AM

How to install the mongo extension in php7.0: 1. Create the mongodb user group and user; 2. Download the mongodb source code package and place the source code package in the "/usr/local/src/" directory; 3. Enter "src/" directory; 4. Unzip the source code package; 5. Create the mongodb file directory; 6. Copy the files to the "mongodb/" directory; 7. Create the mongodb configuration file and modify the configuration.

Optimization tips for OPcache configuration in PHP application performance optimization Optimization tips for OPcache configuration in PHP application performance optimization May 01, 2024 am 09:03 AM

By optimizing OPcache configuration, PHP application performance can be improved. Optimization includes: setting a reasonable opcache.memory_consumption size, increasing the value of opcache.max_accelerated_files, enabling opcache.revalidate_freq, disabling opcache.optimization_level

How to install and deploy php7.0 How to install and deploy php7.0 Nov 30, 2022 am 09:56 AM

How to install and deploy php7.0: 1. Go to the PHP official website to download the installation version corresponding to the local system; 2. Extract the downloaded zip file to the specified directory; 3. Open the command line window and go to the "E:\php7" directory Just run the "php -v" command.

PHP Server Environment FAQ Guide: Quickly Solve Common Problems PHP Server Environment FAQ Guide: Quickly Solve Common Problems Apr 09, 2024 pm 01:33 PM

Common solutions for PHP server environments include ensuring that the correct PHP version is installed and that relevant files have been copied to the module directory. Disable SELinux temporarily or permanently. Check and configure PHP.ini to ensure that necessary extensions have been added and set up correctly. Start or restart the PHP-FPM service. Check the DNS settings for resolution issues.

See all articles