乐趣区

关于服务器:记一次缓存服务器迁移史心塞

写在后面

上班后原本能够好好劳动下,后果刚躺下,此时,叮铃铃电话响了。

“喂,你好!”。

“喂,冰河,睡了吗?我是 XXX,我当初遇到个问题,我想把缓存服务器从 CentOS 迁徙到 Windows 上,还有就是我想应用 Memcached,你帮我弄下啊”。

“啥?为啥要弄到 Windows 上啊,为啥应用 Memcached 啊?Redis 不香吗?Redis 比 Memcached 弱小的多啊!!”

“这我晓得啊,然而我对 Linux 操作系统和 Redis 不太熟啊,我想迁徙到 Memcached 上测试下啊!”。

“不太熟缓缓积攒,缓缓学”。

“然而我的项目下周上线,我不太会啊,怎么办?你帮我弄下呗,我的项目先上线,当前我再缓缓学”。

我这人还是挺喜爱帮忙他人的,于是乎,我冒着“酷寒”起床帮他迁徙缓存服务器了。

文章已收录到:

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 不太熟!这又阐明了什么问题呢?

小伙伴们还是要及时更新本人的技术栈啊!不然,受限于本人的技术栈,很多弱小并且很牛逼的技术你都不会用。千万不要把本人废掉,不要向《程序员如何让本人更快的废掉?》中说的那样~~

好了,明天就到这儿吧,我是冰河,大家有啥问题能够在下方留言,也能够加我微信,一起交换技术,一起进阶,一起牛逼~~

退出移动版