>  기사  >  백엔드 개발  >  memcached 및 xcache를 사용한 PHP 캐시 최적화 구현 단계

memcached 및 xcache를 사용한 PHP 캐시 최적화 구현 단계

php中世界最好的语言
php中世界最好的语言원래의
2017-12-05 09:36:521897검색

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 mOo

Re에 추가하세요. 시작 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

complete


이 사례를 읽으신 후 방법을 마스터하셨다고 생각합니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사에 주목하세요!

관련 읽기:

카멜 표기법 명명 및 JS에 대한 질문에 대한 답변

JS의 부울 값, 관계 연산자 및 논리 연산자에 대한 자세한 설명과 예 ​​

프런트엔드 js 요약 프레임워크 및 용도 설명

위 내용은 memcached 및 xcache를 사용한 PHP 캐시 최적화 구현 단계의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.