LAMP和LNMP加速與快取優化
LAMP和LNMP的優化,兩者php的優化差不多:
apache+php(libphp5.so)
nginx+php(fcgi php-fpm)
優化都是對應一個主配置檔案php.ini
nginx php(fcgi php-fpm)有一個自己的配置檔案php-fpm.conf
php web引擎快取加速優化實戰
php慢的瓶頸點有兩點:1、解析需要時間 2、需要找後面mysql要,需要時間。
1.操作碼快取。。。將php引擎解析資料請求編譯後的資料快取起來。
php在高版本後可直接編譯時加上異地mysql引數,然後php配置檔案裡指路徑即可:
–with-mysql=mysqlnd 本地就不需要安裝mysql軟體包了。
DNS直接修改/etc/resolv.conf這個檔案是沒用的,只是暫時的,重啟之後就會恢復原樣,網路服務重啟以後會根據/etc/sysconfig/network-scripts/ifcfg-eth0來過載配置,如果ifcfg-eth0沒有配置DNS,那麼resolv.conf會被沖掉,重新變成空值。
檢視mysql編譯引數:
[root@web2 ~]# grep CONFIGURE_LINE /application/mysql/bin/mysqlbug
CONFIGURE_LINE=”./configure `–prefix=/application/mysql5.1.72` `–with-unix-socket-path=/application/mysql5.1.72/tmp/mysql.sock` `–localstatedir=/application/mysql5.1.72/data` `–enable-thread-safe-client` `–with-mysqld-user=mysql` `–with-big-tables` `–without-debug` `–without-pthread` `–enable-assembler` `–with-extra-charsets=complex` `–with-readline` `–with-ssl` `–with-embedded-server` `–enable-local-infile` `–with-plugins=partition,innobase` `–with-mysqld-ldflags=-all-static` `–with-client-ldflags=-all-static`”
`test -n “$CONFIGURE_LINE” && echo “Configure command: $CONFIGURE_LINE”`
檢視apache編譯引數:/application/apache/bin/apachectl -V
檢視php編譯引數:
/application/php/bin/php -i|grep configure
Configure Command => `./configure` `–prefix=/application/php5.3.27` `–with-apxs2=/application/apache/bin/apxs` `–with-mysql=/application/mysql` `–with-xmlrpc` `–with-openssl` `–with-zlib` `–with-freetype-dir` `–with-gd` `–with-jpeg-dir` `–with-png-dir` `–with-iconv=/usr/local/libiconv` `–enable-short-tags` `–enable-sockets` `–enable-zend-multibyte` `–enable-soap` `–enable-mbstring` `–enable-static` `–enable-gd-native-ttf` `–with-curl` `–with-xsl` `–enable-ftp` `–with-libxml-dir`
PHP Warning: Unknown: It is not safe to rely on the system`s timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected `Asia/Chongqing` for `CST/8.0/no DST` instead in Unknown on line 0
字符集會影響正規表示式的匹配:
echo ‘export LC_ALL-C’>>/etc/profile
source /etc/profile
由於php加速器大多是perl語言寫的,所以要安裝以下內容:
yum install perl-CPAN -y
yum install perl-devel -y
eaccelerator:優點,PHP加速、優化、和動態內容快取的擴充套件模組,缺點,快倒閉,開發不活躍了。可提高php效率10倍。
XCache:跟eaccelerator一樣,安裝時2選1,效率比eaccelerator高,開發更活躍。
上傳nginx-php-ext-soft.zip到伺服器,然後unzip解壓。upzip -o是覆蓋解壓,指令碼時可利用上,但要注意非常危險,直接覆蓋不提示。
tar jxf eaccelerator-0.9.6.tar.bz2
cd eaccelerator-0.9.6
/application/php/bin/phpize 在php裡安裝第三方程式都要執行此條命令,擴充套件php模組的,所有外掛都要執行它。
./configure –enable-eaccelerator=shared –with-php-config=/application/php/bin/php-config
make&&make install
編譯完後檢視:
[root@web2 nginx-php-ext-soft]# ls /application/php5.3.27/lib/php/extensions/no-debug-zts-20090626/
eaccelerator.so —-代表編譯成功
安裝xchache:
/application/php/bin/phpize
解壓軟體進入目錄
./configure –enable-xcache –with-php-config=/application/php/bin/php-config
make&&make install
最後檢視安裝上了沒:
[root@mysql1 xcache-1.3.2]# ls /application/php5.3.27/lib/php/extensions/no-debug-non-zts-20090626/ 這個路徑跟apache裡的不一樣,注意。
PHP快取加速器軟體種類
xcache,eaccelerator,Zend(只支援php5.2,開發慢),apc
如何選擇:
建議xcache,eaccelerator,二選一,首選xcache,更快開發更活躍。
Memcache分為服務端軟體和客戶端外掛兩部分:
服務端軟體的名字為:memcached-1.4.3.tar.gz
客戶端軟體的名字為:memcache-2.2.5.tgz,本文就是客戶端外掛在php服務中的安裝。
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
make&&make install
安裝PDO_MYSQL它是資料庫的一個輔助工具,非必選。
tar PDO_MYSQL-1.0.2.tgz
[root@mysql1 nginx-php-ext-soft]# tar xf PDO_MYSQL-1.0.2.tgz
[root@mysql1 nginx-php-ext-soft]# 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-non-zts-20090626/
ImageMagick影像處理軟體,可將大圖處理成縮圖,它不是擴充套件包,不用/application/php/bin/phpize來處理。
tar xf ImageMagick.tar.gz
cd ImageMagick-6.5.1-2/
./configure &&
make&&make install
再安裝imagick-2.3.0.tgz,只有將上面的ImageMagick裝了後才能裝它,它們有先後順序的。因為imagick-2.3.0.tgz需要呼叫到上面的ImageMagick。
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
本文轉自 流顆星 51CTO部落格,原文連結:http://blog.51cto.com/liukexing/1969457
相關文章
- lamp和lnmpLAMPLNMP
- PHP環境LAMP/LNMP安裝與配置筆記PHPLAMPLNMP筆記
- HTTP前端效能優化(壓縮與快取)HTTP前端優化快取
- SpringBoot之日誌註解和快取優化Spring Boot快取優化
- 頁面快取優化快取優化
- redis快取優化案例Redis快取優化
- CDN加速快取的定義與作用快取
- 【社群話題分享】LAMP 還是 LNMP 或者 ?LAMPLNMP
- 前端效能優化之快取技術前端優化快取
- Laravel 優化 Auth 使用快取驅動Laravel優化快取
- 前端效能優化之HTTP快取策略前端優化HTTP快取
- Laravel Passport 使用快取優化記錄LaravelPassport快取優化
- [效能優化] 為虛擬列表增加離屏渲染和快取優化快取
- Spark Streaming(六):快取與持久化Spark快取持久化
- Web靜態資源快取及優化Web快取優化
- 前端效能優化 之 瀏覽器快取前端優化瀏覽器快取
- Web 效能優化:理解及使用 JavaScript 快取Web優化JavaScript快取
- ServiceWorker 快取與 HTTP 快取快取HTTP
- 快取最佳化(快取穿透)快取穿透
- 如何優雅的設計和使用快取?快取
- Laravel 實現二級快取 提高快取的命中率和細粒化快取 keyLaravel快取
- 【譯】Web 效能優化:理解及使用 JavaScript 快取Web優化JavaScript快取
- [譯]谷歌Web效能優化系列:HTTP 快取(中英)谷歌Web優化HTTP快取
- cocos2d-x 優化(紋理渲染優化、資源快取、記憶體優化)優化快取記憶體
- 【http】https加速優化HTTP優化
- 清理 Conda 快取和 Pip 快取快取
- 使用快取記憶體Serde加速Kafka反序列化效能 - Kaszuba快取記憶體Kafka
- http快取與cdn快取配置指南HTTP快取
- Web 快取機制 與 快取策略Web快取
- 前端優化:瀏覽器快取技術介紹前端優化瀏覽器快取
- 前端效能優化(二)——瀏覽器快取機制前端優化瀏覽器快取
- 聊聊本地快取和分散式快取快取分散式
- 304與快取快取
- 評論模組優化 - 資料表優化、新增快取及用 Feign 與使用者服務通訊優化快取
- 快取穿透、快取雪崩和快取擊穿是什麼?快取穿透
- 快取專題:HTML5離線快取與HTTP快取快取HTMLHTTP
- LNMP 分散式叢集(四):Memcached 快取伺服器的搭建LNMP分散式快取伺服器
- 使用IndexedDB快取給WebGL三維程式加速Index快取Web
- 代理與反向代理、負載均衡和快取負載快取