這篇文章主要介紹了nginx memcache快取的介紹,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下
在一個lnmp架構中,nginx遇到動態資源,會反向代理,把請求發送到後端的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的連接。
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裡,可以驗證安裝
location / { set $memcached_key "$uri"; memcached_pass 127.0.0.1:11211; error_page 404 /callback.php; }
以上就是本文的全部內容,希望對大家的學習有所幫助,更多相關內容請關注PHP中文網!
相關推薦:
php中imagettfbbox和imagettftext 文字圖片自動換行的方法
PHPstorm配置PHPunit對composer引入的php程式碼進行單元測試
以上是nginx memcache快取的介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!