ubuntu 配置memcache

安裝服務器
sudo apt-get install memcached
$ memcached -d -m 50 -p 11211 -u root
備註:此命令每次重新開機後都要運行一下,寫個腳本來讓系統自啓動時運行這個命令的

參數說明 -m 指定使用多少兆的緩存空間;-p 指定要監聽的端口; -u 指定以哪個用戶來運行

//ubuntu10.*版本以後增加了安全性,在/etc/memcached.conf 裏 -l參數設置可以訪問的ip地址 默認127.0.0.1  (即本地才能訪問),如果遠程無法連接, 可以註釋掉,這樣就能IP都可以訪問

安裝php 模塊
sudo apt-get install php5-memcache

編輯配置文件
$ sudo vim /etc/php5/conf.d/memcache.ini
; uncomment the next line to enable the module
extension=memcache.so

[memcache]
memcache.dbpath="/var/lib/memcache"
memcache.maxreclevel=0
memcache.maxfiles=0
memcache.archivememlim=0
memcache.maxfilesize=0
memcache.maxratio=0

在apache中使用 memcache 來作 session 存儲,用例子測試一下:

session.save_handler = memcache
session.save_path = "tcp://127.0.0.1:11211"

使用多個 memcached server 時用逗號","隔開,並且和 文檔中說明的一樣,可以帶額外的參數"persistent"、"weight"、"timeout"、"retry_interval" 等等,類似這樣的:"tcp://host1:port1?persistent=1&weight=2,tcp://host2:port2" 。

<?php



session_start();



$_SESSION["UserID"]=123;



echo session_id();



?>

用 sessionid 去 memcached 裏查詢一下:

<?php



$memcache = memcache_connect('localhost', 11211);



var_dump($memcache->get('19216821213cxycedec65b0883238c278eeb573e077'));



?>

用 memcache 來存儲 session 在讀寫速度上會比 files 時快很多,而且在多個服務器需要共用 session 時會比較方便,將這些服務器都配置成使用同一組 memcached 服務器就可以,減少了額外的工作量。缺點是 session 數據都保存在 memory 中,持久化方面有所欠缺,但對 session 數據來說也不是很大的問題。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章