> 백엔드 개발 > PHP7 > PHP7의 성능을 최적화하고 개선하는 방법을 설명하는 기사

PHP7의 성능을 최적화하고 개선하는 방법을 설명하는 기사

藏色散人
풀어 주다: 2023-02-18 09:14:01
앞으로
1921명이 탐색했습니다.

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

PHP7의 성능을 최적화하고 개선하는 방법을 설명하는 기사

1. Opcache를 활성화하는 것을 기억하세요. Opcache를 활성화하지 않아도 PHP7은 Opcache를 활성화한 PHP-5.6보다 빠르기 때문에 이런 일이 이전 테스트 기간에 발생했습니다. Opcache를 활성화한 적이 없습니다. 추가:

zend_extension=opcache.so
opcache.enable=1
opcache.enable_cli=1"
로그인 후 복사

2. 새로운 컴파일러를 사용하세요.

opline 및 Execution_data 지원을 위한 전역 레지스터만 지원되므로 최신 컴파일러를 사용하는 것이 좋습니다. GCC 4.8 이상으로 PHP에서 활성화하면 약 5% 성능 향상이 가능합니다(Wordpres의 QPS 관점에서 측정)

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

3. HugePage

이전 기사에서도 소개했습니다: PHP7을 더 빠르게 만드는 Hugepage, 먼저 시스템에서 HugePages를 활성화한 다음 Opcache의 huge_code_pages를 활성화하세요.

Take 예를 들어, CentOS 6.5에서는 다음을 통해 512개의 예약된 대용량 페이지 메모리를 할당합니다. 자체 텍스트 세그먼트와 대규모 메모리 할당을 저장하여 TLB 누락을 줄이고 성능을 향상시킵니다.

4. Opcache 파일 캐시

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

php.ini에 추가:

코드는 다음과 같습니다.

$sudo sysctl vm.nr_hugepages=512
로그인 후 복사

이러한 방식으로 PHP 일부 Opcode 바이너리 내보내기 파일은 /

5.PGO


내 이전 기사: PHP7을 더 빠르게 만들기(GCC PGO)도 소개되었습니다. PHP가 프로젝트를 제공하도록 특별히 설계된 경우 WordPress나 Drupal 등의 경우 PGO를 사용하여 PHP를 개선하고 특히 프로젝트 성능을 향상시킬 수 있습니다.

Specific, wordpress 4.1을 최적화 시나리오로 사용 먼저, PHP를 컴파일할 때. :

코드는 다음과 같습니다:

$ cat /proc/meminfo | grep Huge
AnonHugePages: 106496 kB
HugePages_Total: 512
HugePages_Free: 504
HugePages_Rsvd: 27
HugePages_Surp: 0
Hugepagesize: 2048 kB
로그인 후 복사

그런 다음 프로젝트를 사용하여 WordPress 등의 PHP를 교육합니다.

코드는 다음과 같습니다.

 opcache.huge_code_pages=1
로그인 후 복사

즉, php-CGI가 WordPress 홈페이지를 100번 실행하도록 합니다.

마지막으로:

opcache.file_cache=/tmp
로그인 후 복사

지금 컴파일한 PHP7은 프로젝트에 맞춰진 최고 성능의 컴파일 버전입니다.

지금은 여기까지입니다. 생각이 나면 더 추가하겠습니다. 나중에 누구나 시도해 볼 수 있습니다. 감사합니다

위 내용은 PHP7의 성능을 최적화하고 개선하는 방법을 설명하는 기사의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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