추천(무료): PHP7
일부 PHP 블로그에서는 PHP7 버전의 고성능을 활용하는 방법을 공유합니다. PHP7이 출시된 지 꽤 되었지만 지금도 여전히 많은 친구들이 있습니다. 아직도 PHP5.6을 사용하고 있는 친구들 중 몇몇 친구들은 PHP7을 사용해 봤지만 고성능 버전이라는 말을 들었지만 PHP7의 장점을 어떻게 반영해야 할지 모르겠다는 내용의 글을 요약하고 싶습니다. PHP7을 여러분과 공유합니다.
PHP7을 사용할 때 고성능을 활성화하려면 다음 사항에 주의해야 합니다.
1. Opcache
Zend Opcache를 반드시 활성화해야 하지만, 이 확장 기능을 활성화하지 않더라도 , 성능은 PHP5.6보다 훨씬 빠릅니다. Opcache 모드를 활성화하려면 다음을 추가하세요: php.ini 구성 파일에
zend_extension=opcache.so opcache.enable=1 opcache.enable_cli=1
2. 새 컴파일러 사용
최신 컴파일러 사용, GCC 4.8 이상을 사용하는 것이 좋습니다. PHP에서만 GCC 4.8 이상이 전역 등록을 활성화하므로 GCC 4.8 이상이 권장됩니다. opline 및 Execute_data 지원의 경우 약 5%의 성능 향상을 가져옵니다(Wordpres의 QPS 관점에서 측정)
실제로 GCC 4.8 이전 버전도 지원되지만 지원에 버그가 있는 것으로 확인되었으므로 반드시 지원해야 합니다. 버전 4.8 이상이면 이 기능이 활성화됩니다.
3.HugePage
시스템에서 HugePages 및 Opcache를 활성화해야 합니다. 이는 다음 코드를 통해 수행할 수 있습니다. huge_code_pages
$sudo sysctl vm.nr_hugepages=512마지막으로 php.ini를 추가합니다:
$ cat /proc/meminfo | grep Huge AnonHugePages: 106496 kB HugePages_Total: 512 HugePages_Free: 504 HugePages_Rsvd: 27 HugePages_Surp: 0 Hugepagesize: 2048 kB이런 식으로 PHP는 자체 텍스트 세그먼트를 저장하고 엄청난 메모리 할당이 저장됩니다. 대용량 메모리 페이지에서 TLB 누락을 줄여 성능을 향상시킵니다.
4. Opcache 파일 캐시
Opcache 파일 캐시 켜기(실험적) 이 기능을 켜면 Opcache가 외부 파일에 opcode 캐시를 캐시하도록 할 수 있으며, 일부 스크립트의 경우 성능이 크게 향상됩니다.
php.ini에opcache.huge_code_pages=1추가 이러한 방식으로 PHP는 PHP 수명 주기 전반에 걸쳐 존재할 수 있는 /tmp 디렉터리에 일부 Opcode 바이너리 내보내기 파일을 캐시합니다.
5. PGO
PHP가 WordPress, drupal 또는 다른 프로젝트와 같은 고유한 프로젝트를 실행하는 데만 사용되는 경우 PGO를 통해 PHP를 업그레이드해 볼 수 있습니다. 프로젝트.
구체적으로 최적화 시나리오로는 WordPress 4.1을 사용했습니다. 먼저 PHP를 컴파일할 때:opcache.file_cache=/tmp그런 다음 프로젝트를 사용하여 WordPress 등의 PHP를 교육합니다. $ sapi/cgi/php-cgi -T 100 /home/huixinchen/local/www/htdocs/wordpress/index .php >/dev/null 즉, php-cgi가 WordPress 홈페이지를 100번 실행하여 프로세스에서 일부 프로필 정보를 생성하도록 하여 PHP가 이 정보를 기억할 수 있도록 합니다. 마지막으로:
$ make prof-gen이번에 컴파일한 PHP7은 프로젝트에 맞춰진 최고 성능의 컴파일 버전입니다. 기초부터 tp5 몰 실습, laravel5.6 실습, swoole, 결제 인터페이스 개발, redis, 높은 동시성 및 기타 중급 및 고급 학습까지Wei X: xiaopingguo950321 펭귄 번호: 722584796
위 내용은 PHP7의 고성능을 마음껏 발휘하여 좋은 젓갈이 되어보세요의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!