日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

php引擎优化

發布時間:2024/4/14 php 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php引擎优化 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

php引擎優化

6.1.php引擎緩存優化

? ? 首先,影響php效率的主要有2個因素。其一:libphp5.so需要編譯php源代碼成為opcode樹(操作碼);其二:php需要與數據庫進行讀寫,數據庫的并發能力很低。


? ? 于是php緩存加速器為的就是解決上述第一個原因,將opcode內容進行緩存,目的是防止php每次請求都重復編譯php程序代碼,因為在高訪問量的網站上,大量的重復編譯會小號很多資源和時事件,所以這里的瓶頸就是php的重復編譯既影響了相應速度,又加重了服務器的負載,為了解決此問題,php加速器就這樣誕生了


? ? 解決php與mysql之間的問題,用到了memcache,在php與mysql之間架設緩存,有效提高了數據庫的并發數。



查看nginx編譯參數

/application/nginx/sbin/nginx -V

查看nginx版本

/application/nginx/sbin/nginx -v


查看apache版本

/application/apache/bin/apachectl -v

查看apache編譯參數

cat /application/apache/build/config.nice


查看Mysql編譯參數

grep CONFIGURE_LINE /application/mysql/bin/mysqlbug


查看php編譯參數

/application/php/bin/php -i | grep configure



6.1.1安裝php引擎緩存加速器

echo 'export LC_ALL=C' >> /etc/profile

source /etc/profile

echo $LC_ALL

yum install perl-CPAN


(1) eaccelerator

tar xf eaccelerator-0.9.6.tar.bz2

cd eaccelerator-0.9.6

/application/php/bin/phpize

./configure \

--enable-eaccelerator=shared \

--with-php-config=/application/php/bin/php-config

make

make install


make install完成會顯示這樣一個目錄,記錄下來

ls /application/php5.3.27/lib/php/extensions/no-debug-zts-20090626/


(2)xcache

http://xcache.lighttpd.net


/application/php/bin/phpize

./configure \

--enable-xcache \

--with-php-config=/application/php/bin/php-config

make

make install

注意:xcache與eaccelerator只要裝一個就好了


php緩存加速軟件種類

xcache,eaccelerator,Zend,apc

如何選擇

建議xcache,eaccelerator 二選一

xcache>eaccelerator

原因:

a.xcache更快,效率更高

b.xcache開發更活躍


操作碼緩存加速軟件↑



6.1.2數據庫緩存memcache

php瓶頸:

1.本身需要解析php代碼

2.需要請求數據庫,數據庫并發比較低

解決方案:在php與數據庫之間架設緩存,memcached(客戶端軟件)


服務端memcached-1.4.3.tar.gz

客戶端memcache-2.2.5.tgz


tar xf memcache-2.2.5.tgz

cd memcache-2.2.5

/application/php/bin/phpize

./configure --with-php-config=/application/php/bin/php-config


ls /application/php5.3.27/lib/php/extensions/no-debug-zts-20090626/



6.1.3PDO_MYSQL擴展模塊

PDO擴展為PHP訪問數據庫定義了一個輕量級的、一致性的接口,它提供了一個數據訪問抽象層,這樣,無論使用什么數據庫,都可以通過一致的函數執行查詢并獲取數據


tar xf PDO_MYSQL-1.0.2.tgz

cd PDO_MYSQL-1.0.2

/application/php/bin/phpize

./configure \

--with-php-config=/application/php/bin/php-config \

--with-pdo-mysql=/application/mysql

make

make install


ls /application/php5.3.27/lib/php/extensions/no-debug-zts-20090626/



6.1.4安裝圖像處理程序及imagick擴展模塊

BEGIN failed--compilation aborted at Makefile.PL line 24.

make[1]: *** [PerlMagick/Makefile] Error 2

make[1]: Leaving directory `/home/xiaoyi/tools/ImageMagick-6.5.1-2'

make: *** [all] Error 2


yum install perl-CPAN -y

tar xf ImageMagick.tar.gz

cd ImageMagick-6.5.1-2/

make

make install

cd ..


tar xf imagick-2.3.0.tgz

cd imagick-2.3.0

/application/php/bin/phpize

./configure --with-php-config=/application/php/bin/php-config

make

make install


[root@apache imagick-2.3.0]# ls /application/php5.3.27/lib/php/extensions/no-debug-zts-20090626/

eaccelerator.so ?imagick.so ?memcache.so ?pdo_mysql.so



6.1.5配置擴展插件

cp /application/php/lib/php.ini /application/php/lib/php.ini.bak

vim /application/php/lib/php.ini

819 ?extension_dir = "/application/php5.3.27/lib/php/extensions/no-debug-zts-20090626/"

尾行追加

1919 ; ----------------------

1920 extension = memcache.so

1921 extension = pdo_mysql.so

1922 extension = imagick.so

1923 ;-----------------------

快速復制:

extension = memcache.so

extension = pdo_mysql.so

extension = imagick.so


(1)配置eaccelerator插件

1.配置eaccelerator緩存目錄

mkdir -p /tmp/eaccelerator

chown ett /tmp/eaccelerator -R

此目錄可以用tmpfs內存文件系統來存儲,SSD固態硬盤


cat >> /application/php/lib/php.ini <<EOF

[eaccelerator]

extension=eaccelerator.so

eaccelerator.shm_size="64"

eaccelerator.cache_dir="/tmp/eaccelerator"

eaccelerator.enable="1"

eaccelerator.optimizer="1"

eaccelerator.check_mtime="1"

eaccelerator.debug="0"

eaccelerator.filter=""

eaccelerator.shm_max="0"

eaccelerator.shm_ttl="3600"

eaccelerator.shm_prune_period="3600"

eaccelerator.shm_only="0"

eaccelerator.compress="1"

eaccelerator.compress_level="9"

EOF


如果配置了Zend [eaccelerator]要放在Zend的內容配置前

[root@apache imagick-2.3.0]# /application/php/bin/php -v

PHP 5.3.27 (cli) (built: Apr 13 2015 10:53:41)?

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 eAccelerator



(2)配置xcache插件加速

cp php-5.3.27/php.ini-production /application/php/lib/php.ini

vim /home/xiaoyi/tools/xcache-1.3.2/xcache.ini編輯修改xcache配置參數


注釋3 ;zend_extension = /usr/local/lib/php/extensions/non-debug-non-zts-xxx/xcache.so

注釋6 ;zend_extension_ts = c:/php/extensions/php_xcache.dll

取消注釋8 extension = xcache.so

cat /home/xiaoyi/tools/xcache-1.3.2/xcache.ini >> /application/php/lib/php.ini


最后通過phpinfo();檢查都擴展都已安裝

<?php

phpinfo();

?>


wget http://blog.zyan.cc/soft/linux/webbench/webbench-1.5.tar.gz

tar xf webbench-1.5.tar.gz

cd webbench-1.5

make?

make install


? 565 ?webbench -c 100 -t 10 http://bbs.etiantian.org/forum.php

? 566 ?webbench -c 200 -t 10 http://bbs.etiantian.org/forum.php

? 567 ?webbench -c 300 -t 10 http://bbs.etiantian.org/forum.php

? 568 ?webbench -c 400 -t 10 http://bbs.etiantian.org/forum.php

? 569 ?webbench -c 500 -t 10 http://bbs.etiantian.org/forum.php

? 570 ?webbench -c 500 -t 30 http://bbs.etiantian.org/forum.php

? 571 ?webbench -c 600 -t 30 http://bbs.etiantian.org/forum.php

? 572 ?webbench -c 650 -t 30 http://bbs.etiantian.org/forum.php

? 573 ?webbench -c 550 -t 30 http://bbs.etiantian.org/forum.php

? 574 ?webbench -c 520 -t 30 http://bbs.etiantian.org/forum.php

? 575 ?webbench -c 510 -t 30 http://bbs.etiantian.org/forum.php


未安裝eaccelerator之前忘記對網站進行壓力測試了 - -


轉載于:https://blog.51cto.com/gongxiaoyi/1825450

超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生

總結

以上是生活随笔為你收集整理的php引擎优化的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。