阿里云主机安装Memcached扩展优化WordPress
2019獨角獸企業重金招聘Python工程師標準>>>
前言
最近發現阿里云主機在使用中,并發訪問量稍大,頁面加載速度就很慢。于是學習了一些服務器優化的文章,決定安裝Memcached,優化頁面查詢,提高Wordpress的響應速度。這里記錄下阿里云主機Centos6.3的Memcached安裝的過程。
Memcached 是一個高性能的分布式內存對象緩存系統,用于動態Web應用以減輕數據庫負載。它通過在內存中緩存數據和對象來減少讀取數據庫的次數,從而提供動態、數據庫驅動網站的速度。Memcached基于一個存儲鍵/值對的hashmap。其守護進程(daemon)是用C寫的,但是客戶端可以用任何語言來編寫,并通過memcached協議與守護進程通信。但是它并不提供冗余(例如,復制其hashmap條目);當某個服務器停止運行或崩潰了,所有存放在該服務器上的鍵/值對都將丟失。
Memcached函數庫是在PECL(PHP Extension Community Library)中,主要作用是搭建大容量的內存數據的臨時存放區域,在分布式環境下的作用體現的非常明顯。
本文就詳細講解如何讓PHP支持Memcached,以提高大訪問量網站的訪問速度,本文的PHP和Memcached的安裝環境為Centos6.3操作系統。
安裝Memcached前的準備工作
(1)首先安裝apache、mysql、php,詳細參見阿里云服務器搭建LAMP環境
[root@Linux ~]#yum install -y httpd-* mysql-server mysql mysql-devel php-*(2)安裝libevent libevent-devel
Memcached需要libevent的支持,詳細的內容可以找下關于memcached的原理。
(3)安裝php-devel gcc make
Memcached編譯時需要用到php-devel gcc make,需事先安裝好
安裝memcached
方法一:yum安裝簡單方便
[root@Linux ~]#yum -y install memcached方法二:下載安裝
到http://memcached.org/下載最新版本的memcached源代碼包
然后就可以就如安裝步驟了
[root@Linux ~]#tar zxvf ?memcached-1.4.13.tar.gz[root@Linux ~]#cd ?memcached-1.4.13[root@Linux ~]#./configure --prefix=/usr/local/memcached[root@Linux ~]#make[root@Linux ~]#make install[root@Linux ~]#ln -s /usr/local/memcached/bin/memcached /usr/local/bin/啟動memcached
[root@Linux ~]#memcached ?-d -m 10 -u root -l 127.0.0.1 -p 11211 -c 256 -P /tmp/memcached參數說明:
-d選項是啟動一個守護進程,
-m是分配給Memcached使用的內存數量,單位是MB,這里是10MB,
-u是運行Memcached的用戶,我這里是root,
-l是監聽的服務器IP地址,如果有多個地址的話,由于是本地開發( 非實際運行環境 )這里指定了服務器的IP地址127.0.0.1,
-p是設置Memcached監聽的端口,這里設置了11211,最好是1024以上的端口,
-c選項是最大運行的并發連接數,默認是1024,這里設置了256,按照服務器的負載量來設定,
-P是設置保存Memcached的pid文件,這里是保存在 /tmp/memcached.pid。
驗證安裝
memcached -h
應該會輸出一些幫助信息
將memcached加入啟動列表
chkconfig –level 2345 memcached on
配置Memcached
vi /etc/sysconfig/memcached
文件中內容如下
PORT=”11211″ 端口
USER=”root” 使用的用戶名
MAXCONN=”1024″ 同時最大連接數
CACHESIZE=”64″ 使用的內存大小
OPTIONS=”” 附加參數
查看memcached狀態
memcached-tool [Memcached Server IP]:[Memcached Server Port] stats
如:memcached-tool 127.0.0.1:11211 stats
檢查Memcached是否啟動
netstat -ant
出現類似這樣的結果 tcp 0 0 88.88.88.88:11211 0.0.0.0:* LISTEN
11211端口已經打開,說明Memcached已正常啟動。
=====至此,我們將Memcached服務配置完畢,接著我們配置PHP的擴展,以便在程序中來調用=====
安裝Memcached的php擴展
PHP有兩種Memcached擴展,老一點的叫memcache,新一點的叫memcached,這里我安裝的是memcache。
首先到http://pecl.php.net/package/memcache下載memcached的php擴展最新穩定版本
解壓:
[root@Linux ~]#tar zxvf ?memcache-2.2.5.tgz編譯安裝:
[root@Linux ~]#cd memcache-2.2.5[root@Linux ~]#phpize[root@Linux ~]#./configure --enable-memcache --with-php-config=/usr/bin/php-config --with-zlib-dir[root@Linux ~]#make[root@Linux ~]#make install安裝成功后提示:”Installing shared extensions: ? ? /usr/lib64/php/modules/”。
在php.ini文件中添加memcache擴展
[root@Linux ~]#vim /etc/php.ini添加以下內容
extension_dir = "/usr/lib64/php/modules/"extension=memcache.so檢驗Memcache安裝
[root@Linux ~]#php -m[...]memcache mysql mysqli[...]Memcache環境測試
新建一個test.php文件測試PHP的Memcache擴展效果,如果有輸出This is a test!,就表示環境搭建成功。
使Wordpress支持memcached
首先在 http://plugins.trac.wordpress.org/browser/memcached/trunk 目錄下載object-cache.php的最新版本,將該文件放在wordpress目錄中的wp-content 文件夾內。
一般的說法就是這樣子就算啟動了 wordpress 的 memcache 插件了,如果沒有啟動,需要修改這個文件的內容。
確認memcached進程使用的端口,默認的端口是11211,如果你守候了其他的進程(例如:14141),那么需要你在wp-config.php文件中增加如下代碼:
global $memcached_servers; ? $memcached_servers = array(’default’ => array(’127.0.0.1:14141′));//這里的14141替換為你設置的端口 ?這樣配置以后 應該就可以支持memcached了 試試是不是訪問速度快了許多,這個效果對于訪問量大的網站極為明顯。
轉載于:https://my.oschina.net/ajian2014/blog/306893
總結
以上是生活随笔為你收集整理的阿里云主机安装Memcached扩展优化WordPress的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Spring AOP根据JdbcTemp
- 下一篇: 怎么设置环境变量