>백엔드 개발 >PHP7 >PHP7에서 Opcache를 열고 PHP7 성능을 최적화하기 위한 여러 설정 소개

PHP7에서 Opcache를 열고 PHP7 성능을 최적화하기 위한 여러 설정 소개

coldplay.xixi
coldplay.xixi앞으로
2021-03-17 09:47:523276검색

PHP7에서 Opcache를 열고 PHP7 성능을 최적화하기 위한 여러 설정 소개

PHP7이 출시되었습니다. PHP7은 10년 만에 최대 규모의 버전 업그레이드이자 최대 성능 업그레이드로 여러 테스트에서 확실한 성능 향상을 보여주었습니다. 하지만 성능을 극대화하기 위해서는 아직 몇 가지가 남아 있습니다.


권장(무료): PHP7

PHP7 VS PHP5.6

1, Opcache

Zend Opc를 활성화하는 것을 잊지 마세요. 아프다. PHP7이 더 빠르기 때문이다. Opcache가 활성화된 PHP-5.6보다 Opcache가 활성화되어 있지 않아도 이전 테스트 기간 동안 누군가가 Opcache를 활성화하지 않은 경우가 발생했습니다. Opcache를 활성화하는 것은 매우 간단합니다. php.ini 구성 파일에

 zend_extension=opcache.soopcache.enable=1opcache.enable_cli=1"

를 추가하기만 하면 됩니다 2. 새로운 컴파일러

최신 컴파일러인 GCC 4.8 이상을 사용하는 것이 좋습니다. 왜냐하면 GCC 4.8 이상 PHP만이 opline 및 Execute_data 지원을 위한 전역 레지스터를 활성화하여 약 5%의 성능 향상을 가져올 수 있기 때문입니다(QPS 관점에서 측정) of Wordpres)

사실 GCC 4.8 이전 버전에서도 지원하지만 지원에 버그가 있는 것으로 확인되어 4.8 이상 버전에서는 이 기능을 활성화해야 합니다.

3. 또한 소개되었습니다: PHP7을 더 빠르게 만들기 위한 Hugepage, 먼저 시스템에서 HugePages를 활성화한 다음 Opcache의 huge_code_pages를 활성화합니다.

제 CentOS 6.5를 예로 들어 다음을 통해 예약된 512를 할당합니다:

 $sudo sysctl vm.nr_hugepages=512

대용량 페이지 메모리:

 $ cat /proc/meminfo  | grep HugeAnonHugePages:    106496 kBHugePages_Total:     512HugePages_Free:      504HugePages_Rsvd:       27HugePages_Surp:        0Hugepagesize:       2048 kB

그런 다음 추가합니다. :

  opcache.huge_code_pages=1

에서 php.ini로 변환 이런 방식으로 PHP는 자체 텍스트 세그먼트와 대용량 메모리 할당을 저장하기 위해 대용량 메모리 페이지를 사용하여 TLB 누락을 줄이고 성능을 향상시킵니다.

4 Opcache를 활성화합니다. 파일 캐시(실험적). 이를 활성화하면 Opcache가 opcode 캐시를 외부 파일에 캐시하도록 할 수 있습니다. 일부 스크립트의 경우 성능이 크게 향상됩니다.

PHP가 캐시할 수 있도록 php.ini에

 opcache.file_cache=/tmp

를 추가하세요. PHP 수명 주기 전반에 걸쳐 존재할 수 있는 /tmp 디렉터리의 일부 Opcode 바이너리 내보내기 파일

5、PGO

我之前的文章: 让你的PHP7更快(GCC PGO) 也介绍过, 如果你的PHP是专门为一个项目服务, 比如只是为你的Wordpress, 或者drupal, 或者其他什么, 那么你就可以尝试通过PGO, 来提升PHP, 专门为你的这个项目提高性能.

具体的, 以wordpress 4.1为优化场景.. 首先在编译PHP的时候首先:

 $ make prof-gen

然后用你的项目训练PHP, 比如对于Wordpress:

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

也就是让php-cgi跑100遍wordpress的首页, 从而生成一些在这个过程中的profile信息.

最后:

 $ make prof-clean$ make prof-use && make install

这个时候你编译得到的PHP7就是为你的项目量身打造的最高性能的编译版本.

暂时就这么多吧, 以后想起来再加, 欢迎大家尝试, thanks

更多免费推荐:PHP7教程

위 내용은 PHP7에서 Opcache를 열고 PHP7 성능을 최적화하기 위한 여러 설정 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제