Windows 7 下的Memcache 使用:

Windows 7 下的Memcache安裝:

 

1. 下載memcache的windows穩定版,解壓放某個盤下面,比如在c:\memcached

2. 在終端(也即cmd命令界面)下輸入 ‘c:\memcached\memcached.exe -d install’ 安裝

3. 在服務中 登錄中使用 Administrator 身份 否則會啓動失敗

4. 再輸入: ‘c:\memcached\memcached.exe -d start’ 啓動。

 

 

memcached for windows 修改端口和最大內存 :

 

於是就想到直接修改windows服務的啓動參數,操作如下,打開註冊表,找到:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\memcached Server
其中的ImagePath項的值爲:"c:\memcached\memcached.exe" -d runservice
改成:"c:\memcached\memcached.exe" -p 12345 -m 128 -d runservice

保存後重新啓動memcached服務,然後在命令行中輸入netstat -n -a 

 

 memcached  基礎

------------------------------------------適用於
用戶信息seesion【hash(用戶ID)】
分類及產品,最熱貼,最新貼select sql語句【hash(sql),並實時更新】



------------------------------------------理解
MEMCACHE一個不足就是一重啓服務器,數據將會丟失!

爲什麼會有Memcache和memcached兩種名稱?
其實Memcache是這個項目的名稱,而memcached是它服務器端的主程序文件名,知道我的意思了把~~~~。一個是項目名稱,一個是主程序文件名

,在網上看到了很多人不明白,於是混用了


.Web Server(Lighttpd、Nginx據說都比Apache效率高好多,大家可以試用下)對CPU要求高,對內存要求低;而Memcached Server是對CPU要

求低,對內存要求高,所以可以搭配使用。在對前端的Web Server上安裝Memcached Server是可行的。


我考慮的一種簡單方法:
後端的數據庫操作模塊,把所有的Select操作提取出來(update/delete/insert不管),然後把對應的SQL進行相應的hash算法計算得出一個

hash數據key(比如MD5或者SHA),然後把這個key去Memcache中查找數據,如果這個數據不存在,說明還沒寫入到緩存中,那麼從數據庫把數

據提取出來,一個是數組類格式,然後把數據在set到Memcache中,key就是這個SQL的hash值,然後相應的設置一個失效時間,比如一個小時,

那麼一個小時中的數據都是從緩存中提取的,有效減少數據庫的壓力。缺點是數據不實時,當數據做了修改以後,無法實時到前端顯示,並且

還有可能對內存佔用比較大,畢竟每次select出來的數據數量可能比較巨大,這個是需要考慮的因素。

內網訪問
最好把兩臺服務器之間的訪問是內網形態的,一般是Web服務器跟Memcache服務器之間。普遍的服務器都是有兩塊網卡,一塊指向互聯網,一塊

指向內網,那麼就讓Web服務器通過內網的網卡來訪問Memcache服務器,我們Memcache的服務器上啓動的時候就監聽內網的IP地址和端口,內網

間的訪問能夠有效阻止其他非法的訪問。

 

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