>  기사  >  백엔드 개발  >  PHP 바이트코드 캐시 및 내장 서버

PHP 바이트코드 캐시 및 내장 서버

藏色散人
藏色散人앞으로
2019-10-24 14:38:442819검색

Zend OPcache

1) PHP5.0부터 Zend OPcache라는 바이트코드 캐싱 기능이 내장되어 있습니다. PHP는 해석된 언어이기 때문에 PHP 인터프리터가 PHP 스크립트를 실행할 때 PHP 스크립트 코드를 구문 분석하고 일련의 Zend opcode를 생성한 다음 많은 양을 소비하는 모든 HTTP 요청에 해당됩니다. 섹션 코드 캐싱은 미리 컴파일된 바이트코드를 캐시하여 응답 시간을 줄이고 시스템 리소스에 대한 부담을 줄일 수 있습니다.

Zend OPcache 활성화

기본적으로 Zend OPcache는 시작되지 않습니다. PHP를 직접 컴파일하는 경우 명령 실행 시 다음 옵션이 포함되어야 합니다.

--enable-opcache

PHP를 컴파일한 후 아래와 같이 php.ini 파일에 Zend OPcache의 확장 경로도 지정해야 합니다.

zend_extension=/path/to/opcache.so

PHP가 컴파일된 후 성공적으로 컴파일되면 Zend OPcache 확장의 파일 경로가 즉시 표시됩니다. 다음 명령을 사용하여 이 PHP 확장 프로그램의 경로를 찾을 수 있습니다

php-config --extension-dir

그런 다음 다음 코드를 사용하여 확장 프로그램이 정상적으로 실행되고 있는지 확인하세요

<?php
phpinfo();

Configure Zend OPcache

권장 구성

opcache.validate_timestamps = 1 //在生产环境中设为&#39;0&#39;
opcache.revalidate_freq = 0
opcache.memory_comsumption = 64
opcache.interned_strings_buffer = 16
opcache.max_accelerated_files = 4000
opcache.fast_shutdown = 1

PHP 공식 웹사이트를 방문할 수 있습니다 자세한 설정을 보려면

Zend OPcache를 사용하세요

1) 프로덕션 환경에서는 opcache.validate_timestamps=0을 설정할 수 있습니다. 개발 환경에서는 1

기본 제공 HTTP 서버

1)로 설정해야 합니다. php -S localhost:4000 -c app/config/php.ini

2). 지원되지 않습니다. 컨트롤러 모드가 지원되지 않음을 의미합니다. 프런트 엔드 컨트롤러는 모든 HTTP 요청을 전달하는 데 사용되며 .htaccess 파일 또는 다시 쓰기 규칙을 통해 구현되어야 합니다.

3) 라우터 스크립트를 사용하여 위의 기능을 구현할 수 있습니다. 그러나 소수의 URL 재작성 규칙(php -S localhost:8000 router.php

4)만 지원됩니다. 사용할 서버를 확인하세요.

<?php
if (php_sapi_name() === &#39;cli-server&#39;) {
    //php内置服务器
} else {
    // 其他Web服务器
}

PHP 관련 지식을 더 보려면 PHP 중국어 웹사이트를 방문하세요!

위 내용은 PHP 바이트코드 캐시 및 내장 서버의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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