記一次緩存服務器遷移史,心塞!

記一次緩存服務器遷移史,心塞!git

寫在前面

下班後原本能夠好好休息下,結果剛躺下,此時,叮鈴鈴電話響了。程序員

「喂,你好!」。github

「喂,冰河,睡了嗎?我是XXX,我如今遇到個問題,我想把緩存服務器從CentOS遷移到Windows上,還有就是我想使用Memcached,你幫我弄下啊」。windows

「啥?爲啥要弄到Windows上啊,爲啥使用Memcached啊?Redis不香嗎?Redis比Memcached強大的多啊!!」緩存

「這我知道啊,可是我對Linux操做系統和Redis不太熟啊,我想遷移到Memcached上測試下啊!」。bash

「不太熟慢慢積累,慢慢學」。服務器

「可是項目下週上線,我不太會啊,怎麼辦?你幫我弄下唄,項目先上線,之後我再慢慢學」。微信

我這人仍是挺喜歡幫助別人的,因而乎,我冒着「嚴寒」起牀幫他遷移緩存服務器了。併發

文章已收錄到:分佈式

https://github.com/sunshinelyz/technology-binghe

https://gitee.com/binghe001/technology-binghe

什麼是Memcached

一句話,Memcached是一個開源的,高性能,分佈式的緩存系統,基於內存的key-value存儲,用來存儲小塊的任意數據(字符串、對象)。

接下來,咱們就來一塊兒看看如何在Windows服務器上安裝Memcached吧。

安裝Memcached

下載服務端memcached軟件

32bit:下載 memcached-win32-1.4.4-14.zip(直接下)裏面包含6個文件,將解壓後的文件夾隨便放在什麼位置(例如:D:\memcached)。

memcached-win32-1.4.4-14.zip下載頁面:http://blog.couchbase.com/memcached-144-windows-32-bit-binary-now-available

64bit:若是須要win64版,下載 memcached-win64-1.4.4-14.zip(直接下),裏面有個三個文件,用這三個文件覆蓋win32下同名文件。

memcached-win64-1.4.4-14.zip下載頁面:http://blog.couchbase.com/memcached-windows-64-bit-pre-release-available

以管理員身份運行cmd.exe

以管理員身份運行 cmd.exe,並轉至memcached所在文件夾

好比:

cd D:\memcached

注意:若是不以管理員身份運行,將獲得報錯「failed to install service or service already installed」

安裝memcached

d:\memcached memcached.exe -d install

以後屏幕無任何提示,能夠再[控制面板]->[管理工具]->[服務]中查看到memcached。

啓動memcached

啓動方法1:

d:\memcached> memcached.exe -d start

以後屏幕無任何提示,可是在「任務管理器」中勾選「顯示全部用戶進程」,此時能夠看到memcached.exe進程正在運行默認端口11211,外部訪問須要開放該端口,不然沒法成功鏈接。

啓動方法2:

[控制面板]->[管理工具]->[服務] 找到 memcached 服務,雙擊它打開以下圖

  • 啓動類型:選擇【自動】
  • 服務狀態:點擊下面的【啓動】
  • 備註:可執行文件的路徑和我上面所說的路徑有些區別能夠忽略

memcached基本參數設置

  • -p 監聽的端口
  • -l 鏈接的IP地址, 默認是本機
  • -d start 啓動memcached服務
  • -d restart 重起memcached服務
  • -d stop|shutdown 關閉正在運行的memcached服務
  • -d install 安裝memcached服務
  • -d uninstall 卸載memcached服務
  • -u 以的身份運行 (僅在以root運行的時候有效)
  • -m 最大內存使用,單位MB。默認64MB
  • -M 內存耗盡時返回錯誤,而不是刪除項
  • -c 最大同時鏈接數,默認是1024
  • -f 塊大小增加因子,默認是1.25
  • -n 最小分配空間,key+value+flags默認是48
  • -h 顯示幫助

設置參數時須要先中止memcached,而後用命令行設置,好比:

D:\memcached> memcached.exe -m 1 -d start

中止memcached

D:\memcached> memcached.exe -d stop

卸載memcached

D:\memcached> memcached.exe -d uninstall

修改參數

windows下須要經過修改註冊表信息進行設置,打開註冊表,找

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\memcached

在其中有一個「ImagePath」項,值爲:

"D:\memcached\memcached.exe" -d runservice

在後面加上「-m 1024 -c 2048 -p 11210」。等便可。重啓服務後生效

安裝完Memcached,後續把緩存數據從Redis遷移到Memcached,而且把項目中鏈接Redis的信息修改成鏈接Memcached便可。

附加安裝包

你們可到連接http://download.csdn.net/detail/l1028386804/9777810下載Memcached安裝包。

總結

本次遷移緩存服務器其實挺心塞的,不是技術問題,而是小夥伴的技術棧問題,明明Linux+Redis不管是性能、持久化仍是併發方面都勝於Windows+Memcached,可爲何還要用Windows+Memcached呢?緣由就是對Linux+Redis不太熟!這又說明了什麼問題呢?

小夥伴們仍是要及時更新本身的技術棧啊!否則,受限於本身的技術棧,不少強大而且很牛逼的技術你都不會用。千萬不要把本身廢掉,不要向《程序員如何讓本身更快的廢掉?》中說的那樣~~

好了,今天就到這兒吧,我是冰河,你們有啥問題能夠在下方留言,也能夠加我微信,一塊兒交流技術,一塊兒進階,一塊兒牛逼~~

相關文章
相關標籤/搜索