這篇文章主要介紹了關於nginx memcache緩衝的介紹,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下
1 基本
在一個lnmp架構中,nginx遇到動態資源,會反向 Proxy,把請求發送到後端的php-fpm服務,php-fpm從mysql裡讀取資料,生產網頁,然後返回給client。
如果流量大,php-fpm和mysql就會成為瓶頸,解決方案是增加一個memcached緩衝。
nginx首先把$uri作為key,去memcached裡查詢value值,命中就直接把value返回給client。如果沒有,則再通過php-fpm。php-fpm把資料返回給client,並在memcached裡存放一份。
所以,這裡需要nginx和memcached的串連,php和memcached的串連。
2 php安裝memcache擴充模組
php本不支援操作memcahce,需要安裝一個介面。
http://pecl.php.net/package/memcache下載memcache-2.2.7.tgz
yum install m4 autoconf#安裝相關依賴/app/php/bin/phpize#運行phpize,不然memcache目錄下沒有configure檔案 ./configure --with-php-config=/app/php/bin/php-config#安裝擴充模組,使用php-config make && make install#安裝
安裝完後,會產生memcache.so。
php/lib/php.ini檔案裡,有個動態擴充的地方,把memcache.so加進去,重啟php-fpm就行
在info.php裡,可以驗證安裝
3 nginx直連memcache
location / { set $memcached_key "$uri"; memcached_pass 127.0.0.1:11211; error_page 404 /callback.php; }
以上就是本文的全部內容,希望對大家的學習有所協助,更多相關內容請關注topic.alibabacloud.com!