在ubuntu下安装memcache
生活随笔
收集整理的這篇文章主要介紹了
在ubuntu下安装memcache
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
使用Memcache的網站一般流量都是比較大的,為了緩解數據庫的壓力,讓Memcache作為一個緩存區域,把部分信息保存在內存中,在前端能 夠迅速的進行存取。 下面來介紹一下如何安裝和使用memcache。
安裝memcache
在ubuntu下安裝memcache是非常的簡單和快捷的,直接安裝即可(本人使用的是ubuntu 10.04LTS)
sudo apt-get install memcached
memcached -d -m 50 -p 11211 -u root
參數說明:-m 指定使用多少兆的緩存空間;-p 指定要監聽的端口; -u 指定以哪個用戶來運行。 查看更多啟動參數
接下來是要安裝php的memcache模塊和memcached模塊
修改php.ini 的全局設置,本人的php.ini文件在/etc/php5/apache2/下
sudo vi /etc/php5/apache2/php.ini
找到session.save_handler,并設為 session.save_handler = memcache,把session.save_path前面的分號去掉,并設置為 session.save_path = “tcp://127.0.0.1:11211″
session.save_handler = memcache
session.save_path = “tcp://127.0.0.1:11211″
或者某個目錄下的 .htaccess :
php_value session.save_handler “memcache”
php_value session.save_path “tcp://127.0.0.1:11211″
再或者在某個一個應用中:
ini_set(“session.save_handler”, “memcache”);
ini_set(“session.save_path”, “tcp://127.0.0.1:11211″);
使用多個 memcached server 時用逗號”,”隔開,并且和 Memcache::addServer() 文檔中說明的一樣,可以帶額外的參數”persistent”、”weight”、”timeout”、”retry_interval” 等等,類似這樣的:”tcp://host1:port1?persistent=1&weight=2,tcp://host2:port2″ 。
之后記得要重啟apache服務器
sudo /etc/init.d/apache2 restart
查看一下phpinfo()中的 “Registered save handlers” 會有 “files user memcache” 這3個可用。如果沒有的話重新安裝一下或者確定自己是否有重啟apache服務器。
接下來要測試一下是否安裝成功,編輯文件cache.php,內容為:
view plaincopy to clipboardprint?
error_reporting(E_ALL); ?
$memcache = new Memcache; ?
$memcache->connect('localhost', 11211) or die("Could not connect"); ?
? ? ??
$memcache->set('key', 'This is a test!', 0, 60); ?
$val = $memcache->get('key'); ?
echo $val; ?
如果能看到 This is a test!,表示正常安裝成功了。
用 memcache 來作 PHP 的 session.save_handler
view plaincopy to clipboardprint?
session_start(); ?
$_SESSION["UserID"]=123; ?
echo session_id(); ?
記下seesion_id,然后編輯一個新的文件,內容為:
view plaincopy to clipboardprint?
$memcache = memcache_connect('localhost', 11211); ?
var_dump($memcache->get('f4oi3gkal46t1vbb8kd98srff3')); ? // f4oi3gkal46t1vbb8kd98srff3 必須換成你上面取得的session_id ?
如果顯示 string(13) “UserID|i:123;” 那么表示你成功使用了memecache。
用 memcache 來存儲 session 在讀寫速度上會比 files 時快很多,而且在多個服務器需要共用 session 時會比較方便,將這些服務器都配置成使用同一組 memcached 服務器就可以,減少了額外的工作量。缺點是 session 數據都保存在 memory 中,持久化方面有所欠缺,但對 session 數據來說也不是很大的問題。
安裝memcache
在ubuntu下安裝memcache是非常的簡單和快捷的,直接安裝即可(本人使用的是ubuntu 10.04LTS)
sudo apt-get install memcached
memcached -d -m 50 -p 11211 -u root
參數說明:-m 指定使用多少兆的緩存空間;-p 指定要監聽的端口; -u 指定以哪個用戶來運行。 查看更多啟動參數
接下來是要安裝php的memcache模塊和memcached模塊
sudo apt-get install php5-memcache
sudo apt-get install php5-memcached?
修改php.ini 的全局設置,本人的php.ini文件在/etc/php5/apache2/下
sudo vi /etc/php5/apache2/php.ini
找到session.save_handler,并設為 session.save_handler = memcache,把session.save_path前面的分號去掉,并設置為 session.save_path = “tcp://127.0.0.1:11211″
session.save_handler = memcache
session.save_path = “tcp://127.0.0.1:11211″
或者某個目錄下的 .htaccess :
php_value session.save_handler “memcache”
php_value session.save_path “tcp://127.0.0.1:11211″
再或者在某個一個應用中:
ini_set(“session.save_handler”, “memcache”);
ini_set(“session.save_path”, “tcp://127.0.0.1:11211″);
使用多個 memcached server 時用逗號”,”隔開,并且和 Memcache::addServer() 文檔中說明的一樣,可以帶額外的參數”persistent”、”weight”、”timeout”、”retry_interval” 等等,類似這樣的:”tcp://host1:port1?persistent=1&weight=2,tcp://host2:port2″ 。
之后記得要重啟apache服務器
sudo /etc/init.d/apache2 restart
查看一下phpinfo()中的 “Registered save handlers” 會有 “files user memcache” 這3個可用。如果沒有的話重新安裝一下或者確定自己是否有重啟apache服務器。
接下來要測試一下是否安裝成功,編輯文件cache.php,內容為:
view plaincopy to clipboardprint?
error_reporting(E_ALL); ?
$memcache = new Memcache; ?
$memcache->connect('localhost', 11211) or die("Could not connect"); ?
? ? ??
$memcache->set('key', 'This is a test!', 0, 60); ?
$val = $memcache->get('key'); ?
echo $val; ?
如果能看到 This is a test!,表示正常安裝成功了。
用 memcache 來作 PHP 的 session.save_handler
view plaincopy to clipboardprint?
session_start(); ?
$_SESSION["UserID"]=123; ?
echo session_id(); ?
記下seesion_id,然后編輯一個新的文件,內容為:
view plaincopy to clipboardprint?
$memcache = memcache_connect('localhost', 11211); ?
var_dump($memcache->get('f4oi3gkal46t1vbb8kd98srff3')); ? // f4oi3gkal46t1vbb8kd98srff3 必須換成你上面取得的session_id ?
如果顯示 string(13) “UserID|i:123;” 那么表示你成功使用了memecache。
用 memcache 來存儲 session 在讀寫速度上會比 files 時快很多,而且在多個服務器需要共用 session 時會比較方便,將這些服務器都配置成使用同一組 memcached 服務器就可以,減少了額外的工作量。缺點是 session 數據都保存在 memory 中,持久化方面有所欠缺,但對 session 數據來說也不是很大的問題。
總結
以上是生活随笔為你收集整理的在ubuntu下安装memcache的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 启动Memcached报错:/usr/l
- 下一篇: pip安装软件时出现Command py