> 백엔드 개발 > PHP7 > PHP7로 성능을 극대화하는 방법

PHP7로 성능을 극대화하는 방법

Guanhui
풀어 주다: 2023-02-17 14:54:01
앞으로
3494명이 탐색했습니다.

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

PHP7 VS PHP5.6

1. Opcache를 활성화하는 것을 기억하세요. Opcache를 활성화하는 것은 매우 간단합니다. php.ini 구성 파일에

zend_extension=opcache.so

opcache.enable=1

opcache.enable_cli=1"

2을 추가하세요.

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

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

3. HugePage

내 이전 기사에서도 소개했습니다. PHP7을 더 빠르게 만들려면 HugePages를 먼저 활성화한 다음 Opcache의 huge_code_pages를 활성화하세요.

다음을 통해 CentOS 6.5를 예로 들어 보겠습니다.

$sudo sysctl vm.nr_hugepages=512

512개의 예약된 huge 페이지를 할당합니다.

$ cat /proc/meminfo | grep Huge

AnonHugePages: 106496 kB

HugePages_Total: 512

HugePages_Free: 504

H ugePages_Rsvd: 27

HugePages_Surp: 0

거대한페이지 크기: 2048 kB

그런 다음 PHP를 추가하세요. .ini:

opcache.huge_code_pages=1

이러한 방식으로 PHP는 대용량 메모리 페이지를 사용하여 자체 텍스트 세그먼트와 대용량 메모리 할당을 저장하고 TLB 누락을 줄여 성능을 향상시킵니다.

4.

Opcache 파일 캐시 활성화(실험적) 이를 활성화하면 Opcache가 외부 파일에 opcode 캐시를 캐시하도록 할 수 있습니다.

php.ini에 추가:

opcache .file_cache=/tmp

이런 방식으로 PHP는 PHP 수명 주기 전반에 걸쳐 존재할 수 있는 일부 Opcode 바이너리 내보내기 파일을 /tmp 디렉터리에 캐시합니다.

5. PGO

내 이전 기사: PHP7 만들기 더 빠른(GCC PGO)도 도입되었습니다. 귀하의 PHP가 WordPress, drupal 또는 기타 What과 같은 하나의 프로젝트에만 특별히 사용되는 경우 PGO를 통해 PHP를 개선하여 특히 프로젝트 성능을 향상시킬 수 있습니다.

구체적으로, 최적화 시나리오로 wordpress 4.1을 사용하세요. 먼저 PHP를 컴파일할 때:

$ make prof-gen

그런 다음 프로젝트를 사용하여 WordPress의 경우:

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

즉, php-cgi가 WordPress 홈페이지를 100번 실행하여 그 과정에서 일부 프로필 정보를 생성하도록 합니다.

추천 튜토리얼: "

PHP7

"

위 내용은 PHP7로 성능을 극대화하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:laruence.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿