php7安裝memcache 和 memcached 擴充套件
摘要:
php7安裝memcache 和 memcached 擴充套件
標籤(空格分隔): php
memcache和memcached區別
memcache:http://pecl.php.net/package/memcache
memcached:http://pecl.p...
php7安裝memcache 和 memcached 擴充套件
標籤(空格分隔): php
memcache和memcached區別
memcache:http://pecl.php.net/package/memcache memcached:http://pecl.php.net/package/memcached memcached 是高效能的分散式記憶體快取伺服器,而PHP memcache 和 memcached 都是 Memcached 伺服器的 PHP 擴充套件。其中memcache 比 memcached 早出現,所以一些老的程式碼可能還在用 memcache 擴充套件。memcached 後來出現,並且大部分框架都支援。 memcache 是一個原生版本,完全是在 PHP 框架內開發的,支援 OO(面向物件) 和非 OO 兩套介面並存,而 memcached 是建立在 libmemcached 的基礎上的,只支援 OO 介面。這就意味著在安裝 memcache 擴充套件的時候不要求安裝其他的東西,但是在安裝 memcached 的時候會要求你安裝 libmemcached。別嫌麻煩!因為 libmemcached 是 memcache 的 C 客戶端,它具有低記憶體,執行緒安全等優點。據說新浪微博之前就全面將 PHP 的 memcache 替換成 PHP 的 memcached,在高併發下,穩定性果斷提高。 比較尷尬的一點是 memcached 和 memcache 對應的服務端名字都是 memcached,大家使用 ps aux | grep memcache 就會發現守護程序的名字是 memcached(我的環境是 ubuntu16 LTS),其實後面的 d 可以理解為守護程序,因此網上有的人說 memcache 是客戶端, memcached 是服務端就是這個意思,所以不要將客戶端的 memcached 和服務端的 memcached 混淆了就好。
安裝memcached擴充套件
1 選擇對應的tar包安裝 https://pecl.php.net/package/memcached tar -zxvf memcached-3.0.4.tgz memcached-3.0.4 [phpize 和 php-config 要看自己的位置] /usr/local/php/bin/phpize ./configure --with-php-config=/usr/local/php/bin/php-config make && make install Installing shared extensions:/usr/local/php/lib/php/extensions/no-debug-non-zts-20170718/ 2 可能會出現的錯誤  需要安裝依賴yum -y install libmemcached libmemcached-devel
安裝memcache擴充套件
1 https://pecl.php.net/package/memcache 這個方式安裝會失敗: 貌似原因也是還不支援在 PHP7 下安裝 memcache 擴充套件
2 github搜尋 並且程式碼已經支援到 PHP7 git clone https://github.com/websupport-sk/pecl-memcache memcache 用 phpize 安裝,步驟和 memcached 一樣 cd memcache/ [phpize 和 php-config 要看自己的位置] /usr/local/php/bin/phpize ./configure --with-php-config=/usr/local/php/bin/php-config make && make install Installing shared extensions:/usr/local/php/lib/php/extensions/no-debug-non-zts-20170718/
修改php.ini
vim /usr/local/php/etc/php.ini 在檔案最後新增
重啟: service php-pfm restart | service httpd restart 如果報錯: 新增.so的路徑 把 extension_dir ./ 改成 /usr/local/php/lib/php/extensions/no-debug-non-zts-20170718/
再次重啟 如果還不行 再次安裝 多試幾次!