eaccelerator는 동적 콘텐츠를 최적화하고 캐시하는 무료 오픈 소스 PHP 가속기로서 PHP의 스크립트 캐싱 성능을 향상시키고 스크립트를 최적화하여 PHP 프로그램 코드 실행 효율성을 1~10배까지 높일 수 있다는 것을 알고 있습니다. PHP에서 캐싱을 최적화하는 방법을 알려드리겠습니다.
2. 캐싱 원리
사용자가 PHP 프로그램을 요청하면 PHP 엔진은 프로그램을 구문 분석하여 바이너리 형식의 실행 코드인 특정 opcode(opcode)로 컴파일합니다. 그런 다음 이 opcode는 PHP 엔진에 의해 실행되고 폐기됩니다. Opcode 캐시는 이 컴파일된 Opcode를 저장하고 다음에 페이지가 호출될 때 이를 재사용하므로 반복 컴파일에 많은 시간을 절약하고 리소스를 절약하며 성능을 최적화합니다.
3. eaccelerator 설치
Adjust문자 세트
#echo 'LC_ALL=C' >> /etc/profile#source /etc/profile [root@~]#tar jxf eaccelerator-0.9.6.tar.bz2[root@~]#cd eaccelerator-0.9.6 [root@~]#/usr/local/php/bin/phpize phpize是用来扩展php模块的,通过phpize可以建立php的外挂模块[root@~]#./configure --enable-eaccelerator=shared \ --with-php-config=/usr/local/php-5.3.27/bin/php-config[root@~]#make && make install [root@~]# ls /usr/local/php-5.3.27/lib/php/extensions/no-debug-zts-20090626/eaccelerator.so
4. eaccelerator를 로드하도록 PHP 구성
캐시 디렉토리 생성
mkdir /tmp/eaccelerator # 디렉토리는 tmpfs 메모리파일 시스템을 사용하여 저장할 수 있습니다. 솔리드 스테이트 하드 디스크
chown -R www.www /tmp/eaccelerator
php.ini에 다음 콘텐츠를 추가하세요.
eaccelerator cache config by Zhang DeJin 2017-12-1 [eaccelerator] extension = eaccelerator.so eaccelerator.shm_size="64" eaccelerator.cache_dir="/tmp/eaccelerator" eaccelerator.enable="1" eaccelerator.optimizer="1" eaccelerator.chech_mtime="1" eaccelerator.debug="0" eaccelerator.filter="" eaccelerator.shm_max="0" eaccelerator.shm_ttl="3600" eaccelerator.shm_prune_perid="3600" eaccelerator.shm_only="0" eaccelerator.compress="1" eaccelerator.compress_level="9" --End config 测试:[root@lnmp nginx]# /usr/local/php-5.3.27/bin/php -v PHP 5.3.27 (cli) (built: Nov 30 2017 05:35:00) Copyright (c) 1997-2013 The PHP Group Zend Engine v2.3.0, Copyright (c) 1998-2013 Zend Technologies with eAccelerator v0.9.6, Copyright (c) 2004-2010 eAccelerator, by eAccelerat
구성 완료
적용하려면 httpd 또는 php-fpm을 다시 시작하세요
5 버전 선택
php5.3.xx 사용 가능 eaccelerator-0.9 .6 버전
php5 .2.xx 사용 가능 eaccelerator-0.9.5.2 버전
2)Xcache
1 소개
XCache는 빠르고 안정적인 PHP opcode 캐시입니다. 잘 테스트되었으며 트래픽이 많고 로드가 많은 생산 시스템에서 사용됩니다. 작업은 Linux에서 테스트되었으며 PHP_4_3 PHP_4_4 PHP_5_0 PHP_5_1 PHP_5_2 HEAD(6.x)와 같은 모든 현재 PHP 브랜치의 최신 릴리스를 지원하며 유사한 opcode 캐시를 능가합니다. XCache 프로젝트는 Lighttpd 개발팀의 일원이기도 한 moOo가 주도하고 있으며, Lighttpd는 가장 빠른 웹 서버 애플리케이션 중 하나이며, Apache 및 기타 많은 웹 서버를 능가합니다. 효과 2.
tar jxf xcache-1.3.2.tar.bz2cd xcache-1.3.2/usr/local/php-5.3.27/bin/phpize./configure --enable-xcache --with-php-config=/usr/local/php-5.3.27/bin/php-configmake && make install ls /usr/local/php-5.3.27/lib/php/extensions/no-debug-zts-20090626/
3을 설치합니다. xcache를 로드하도록 PHP를 구성합니다
cd /usr/local/php/lib/
Notes 추가
echo >> php.ini echo "xcache config by ZhangDejin 2017-12-1"
xcache-1.3.2/xcache.ini를 수정합니다. sed 명령을 사용하여 세 번째 줄에 주석을 달 수 있습니다
zend_extension = /usr/local/lib/php/extensions/non-debug-non-zts-xxx/xcache.so
여섯 번째 줄에 댓글 달기
zend_extension_ts = c:/php/extensions/php_xcache.dll
여덟 번째 줄 활성화
;extension = xcache.so
서버 구성에 따라 나머지 매개변수를 조정하세요
그런 다음 php.ini
cat /home/king/xcache-1.3.2/xcache.ini >> php.ini
Test
/usr/local/php-5.3.27/bin/php -v PHP 5.3.27 (cli) (built: Nov 29 2017 18:03:24) Copyright (c) 1997-2013 The PHP Group Zend Engine v2.3.0, Copyright (c) 1998-2013 Zend Technologies with XCache v1.3.2, Copyright (c) 2005-2011, by mOoRe에 추가하세요. 시작 httpd 또는 php-fpm 적용3) memcache 클라이언트, PDO_mysql, imagick 확장 라이브러리1. 소개Memcache는 고성능 분산 메모리 객체PDO 확장 기능 PHP가 데이터베이스에 액세스할 수 있는 가볍고 일관된 인터페이스를 정의합니다. 이는 데이터 액세스 추상화 계층을 제공하므로 어떤 데이터베이스를 사용하든 쿼리를 실행하여 일관된 기능을 통해 데이터를 얻을 수 있습니다. ImageMagick은 강력하고 안정적인 무료 작업 세트 및 개발 패키지를 통해 89개 이상의 형식으로 크기 조정, 회전, 선명도 조정, 기타 이미지 유형 축소가 가능합니다. 이제 주요 초점은 성능, 버그 감소 및 ABI 설치입니다.
tar zxf memcache-2.2.5.tgzcd memcache-2.2.5/usr/local/php-5.3.27/bin/phpize./configure --with-php-config=/usr/local/php-5.3.27/bin/php-configmake && make installln /usr/local/php-5.3.27/lib/php/extensions/no-debug-zts-20090626/ls /usr/local/php-5.3.27/lib/php/extensions/no-debug-zts-20090626/ 安装PDO_MYSQL tar zxf PDO_MYSQL-1.0.2.tgzcd PDO_MYSQL-1.0.2/usr/local/php-5.3.27/bin/phpize./configure --with-php-config=/usr/local/php-5.3.27/bin/php-config --with-pdo-mysql=/usr/local/mysql/make && make installls /usr/local/php-5.3.27/lib/php/extensions/no-debug-non-zts-2009062 yum install perl-devel -ytar zxf ImageMagick.tar.gzcd ImageMagick-6.5.1-2/./configuremake && make install安装imagicktar zxf imagick-2.3.0.tgzcd imagick-2.3.0/usr/local/php-5.3.27/bin/phpize./configure --with-php-config=/usr/local/php-5.3.27/bin/php-configmake && make installls /usr/local/php-5.3.27/lib/php/extensions/no-debug-zts-20090626/配置PHP加载pdo_mysql,memcache,imagick等模块修改extension_dir = "./"为extension_dir = "/usr/local/php-5.3.27/lib/php/extensions/no-debug-zts-20090626/"添加这几个模块;--cache ext start by Zhang Dejin 2017-12-1extension = memcache.soextension = pdo_mysql.soextension = imagick.so;End config:nginx 컴파일 매개변수 보기
nginx -V
httpd 컴파일 매개변수 보기
cat httpd/build/config.nice
mysql 컴파일 매개변수 보기
grep "CONFIGURE_LINE" mysql/bin/mysqlbug
php 컴파일 매개변수
php/bin/php -i|grepconfigure
JS의 부울 값, 관계 연산자 및 논리 연산자에 대한 자세한 설명과 예
위 내용은 memcached 및 xcache를 사용한 PHP 캐시 최적화 구현 단계의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!