Skip to content

Memcached Windows安装 ​

安装前准备 ​

1. 系统要求 ​

  • 操作系统:Windows Server 2012 R2/2016/2019/2022,Windows 10/11
  • 架构:支持32位和64位系统
  • 内存:根据业务需求配置,建议至少2GB
  • CPU:至少2核,推荐4核以上
  • .NET Framework:部分管理工具需要.NET Framework 4.0或以上

2. 下载Memcached ​

Memcached官方不提供Windows版本的二进制文件,需要从第三方渠道下载。常用的Windows版本Memcached下载地址:

安装方法 ​

1. 手动安装 ​

步骤1:下载Memcached二进制文件 ​

从上述链接下载适合您系统架构(32位或64位)的Memcached二进制文件。推荐下载最新稳定版本,如1.6.22。

步骤2:解压文件 ​

将下载的压缩包解压到指定目录,如C:\Program Files\memcached。

步骤3:安装为Windows服务 ​

以管理员身份打开命令提示符,执行以下命令:

cmd
cd C:\Program Files\memcached
memcached.exe -d install

步骤4:启动Memcached服务 ​

使用以下命令启动Memcached服务:

cmd
memcached.exe -d start

或者通过Windows服务管理器启动:

  1. 按下Win + R,输入services.msc,点击确定
  2. 在服务列表中找到"memcached Server"
  3. 右键点击,选择"启动"

步骤5:验证安装 ​

使用telnet测试连接:

cmd
# 安装telnet客户端(如果未安装)
dism /online /Enable-Feature /FeatureName:TelnetClient

# 连接Memcached
telnet 127.0.0.1 11211

# 测试SET命令
set test 0 3600 5
hello

# 测试GET命令
get test

# 退出连接
quit

2. 使用Chocolatey安装 ​

Chocolatey是Windows上的包管理器,可以简化Memcached的安装过程。

步骤1:安装Chocolatey ​

以管理员身份打开命令提示符,执行以下命令:

cmd
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))

步骤2:安装Memcached ​

执行以下命令安装Memcached:

cmd
choco install memcached

步骤3:启动Memcached服务 ​

cmd
choco start memcached

3. 使用Docker安装(Windows 10/11) ​

如果您的Windows系统支持WSL 2和Docker,可以使用Docker安装Memcached。

步骤1:安装Docker Desktop for Windows ​

从Docker官网下载并安装Docker Desktop for Windows:https://www.docker.com/products/docker-desktop

步骤2:拉取Memcached镜像 ​

打开PowerShell,执行以下命令:

powershell
docker pull memcached:latest

步骤3:运行Memcached容器 ​

powershell
docker run -d --name memcached -p 11211:11211 memcached:latest

步骤4:验证安装 ​

powershell
docker exec -it memcached memcached-tool 127.0.0.1:11211 stats

配置Memcached ​

1. 配置文件位置 ​

Windows版本的Memcached没有默认的配置文件,需要通过命令行参数或注册表进行配置。

2. 命令行参数配置 ​

常用的命令行参数:

参数描述默认值
-p监听端口11211
-l监听地址0.0.0.0
-d以守护进程方式运行不启用
-m缓存大小(MB)64
-c最大连接数1024
-t工作线程数4
-fSlab增长因子1.25
-n初始Chunk大小(字节)48

3. 注册表配置 ​

可以通过修改注册表来配置Memcached服务:

  1. 按下Win + R,输入regedit,点击确定
  2. 导航到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\memcached Server
  3. 双击ImagePath键,修改其值为包含所需参数的命令行

例如:

"C:\Program Files\memcached\memcached.exe" -d runservice -m 2048 -c 2048 -l 127.0.0.1

4. 配置示例 ​

生产环境配置 ​

cmd
"C:\Program Files\memcached\memcached.exe" -d runservice -m 2048 -c 2048 -l 192.168.1.100 -t 8 -f 1.1 -n 64

管理Memcached服务 ​

1. 启动/停止服务 ​

使用命令行 ​

cmd
# 启动服务
memcached.exe -d start

# 停止服务
memcached.exe -d stop

# 重启服务
memcached.exe -d restart

# 卸载服务
memcached.exe -d uninstall

使用Windows服务管理器 ​

  1. 按下Win + R,输入services.msc,点击确定
  2. 在服务列表中找到"memcached Server"
  3. 右键点击,选择相应的操作(启动、停止、重启等)

2. 查看服务状态 ​

cmd
sc query "memcached Server"

防火墙配置 ​

1. 开放Memcached端口 ​

  1. 按下Win + R,输入wf.msc,点击确定
  2. 点击"入站规则",然后点击"新建规则"
  3. 选择"端口",点击"下一步"
  4. 选择"TCP",输入"11211"作为特定本地端口,点击"下一步"
  5. 选择"允许连接",点击"下一步"
  6. 选择适用的网络类型,点击"下一步"
  7. 输入规则名称,如"Memcached",点击"完成"

性能优化 ​

1. 系统参数优化 ​

调整虚拟内存 ​

  1. 右键点击"此电脑",选择"属性"
  2. 点击"高级系统设置"
  3. 在"高级"选项卡下,点击"性能"中的"设置"
  4. 在"高级"选项卡下,点击"虚拟内存"中的"更改"
  5. 取消勾选"自动管理所有驱动器的分页文件大小"
  6. 选择"自定义大小",设置合适的初始大小和最大值
  7. 点击"设置",然后点击"确定"

关闭不必要的服务 ​

  1. 按下Win + R,输入services.msc,点击确定
  2. 停止或禁用不必要的服务,释放系统资源

2. Memcached参数优化 ​

  • 增加缓存大小:根据业务需求调整-m参数
  • 调整工作线程数:根据CPU核心数调整-t参数,建议设置为CPU核心数的1-2倍
  • 优化Slab增长因子:根据数据大小分布调整-f参数
  • 调整最大连接数:根据并发需求调整-c参数

常见问题及解决方案 ​

1. 无法安装为Windows服务 ​

症状 ​

memcached.exe -d install显示Failed to install service or service already installed

解决方案 ​

  • 确保以管理员身份运行命令提示符
  • 检查是否已安装Memcached服务
  • 如果已安装,先卸载再重新安装:memcached.exe -d uninstall

2. 无法启动Memcached服务 ​

症状 ​

memcached.exe -d start显示Failed to start service

解决方案 ​

  • 检查端口是否被占用:使用netstat -ano | findstr 11211查看
  • 检查服务日志:在事件查看器中查看Memcached服务的错误日志
  • 检查注册表配置:确保ImagePath键值正确

3. 无法连接到Memcached ​

症状 ​

telnet 127.0.0.1 11211显示Connection refused

解决方案 ​

  • 检查Memcached服务是否正在运行:sc query "memcached Server"
  • 检查监听地址和端口:确保配置正确
  • 检查防火墙设置:确保11211端口已开放
  • 检查网络连接:确保网络正常

4. Memcached性能不佳 ​

症状 ​

  • 响应时间长
  • 缓存命中率低
  • CPU或内存使用率高

解决方案 ​

  • 优化Memcached配置参数
  • 调整系统参数
  • 增加Memcached节点数量
  • 优化数据大小和键设计
  • 检查网络连接质量

监控Memcached ​

1. 内置监控工具 ​

使用memcached-tool ​

cmd
memcached-tool 127.0.0.1:11211 stats
memcached-tool 127.0.0.1:11211 display

2. 第三方监控工具 ​

  • MemAdmin:Web-based Memcached管理工具
  • Memcached Manager:Windows GUI管理工具
  • Zabbix:支持Windows上的Memcached监控
  • Prometheus + Grafana:全面监控和可视化

升级Memcached ​

1. 手动升级 ​

cmd
# 停止服务
memcached.exe -d stop

# 卸载服务
memcached.exe -d uninstall

# 下载新版本
# 解压到相同目录

# 重新安装服务
memcached.exe -d install

# 启动服务
memcached.exe -d start

2. 使用Chocolatey升级 ​

cmd
choco upgrade memcached

卸载Memcached ​

1. 手动卸载 ​

cmd
# 停止服务
memcached.exe -d stop

# 卸载服务
memcached.exe -d uninstall

# 删除安装目录
rmdir /s /q "C:\Program Files\memcached"

# 删除注册表项(可选)
# 导航到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services,删除memcached Server项

2. 使用Chocolatey卸载 ​

cmd
choco uninstall memcached

常见问题(FAQ) ​

Q1: Windows版本的Memcached与Linux版本有什么区别? ​

A1: Windows版本的Memcached与Linux版本的主要区别在于:

  • Windows版本由第三方编译,官方不直接支持
  • 配置方式不同,Windows版本通过命令行参数或注册表配置
  • 性能可能略低于Linux版本
  • 服务管理方式不同,Windows版本作为Windows服务运行

Q2: 如何查看Windows版本Memcached的版本? ​

A2: 可以使用以下命令查看Memcached版本:

cmd
memcached.exe -h

Q3: 如何修改Memcached的监听端口? ​

A3: 可以通过以下方式修改监听端口:

  • 命令行参数:memcached.exe -d runservice -p 11212
  • 注册表:修改ImagePath键值,添加-p参数

Q4: 如何限制Memcached只监听本地地址? ​

A4: 可以通过以下方式限制监听地址:

  • 命令行参数:memcached.exe -d runservice -l 127.0.0.1
  • 注册表:修改ImagePath键值,添加-l参数

Q5: 如何增加Memcached的缓存大小? ​

A5: 可以通过以下方式增加缓存大小:

  • 命令行参数:memcached.exe -d runservice -m 2048
  • 注册表:修改ImagePath键值,添加-m参数

Q6: 如何查看Memcached的运行状态? ​

A6: 可以使用以下命令查看Memcached的运行状态:

cmd
sc query "memcached Server"
memcached-tool 127.0.0.1:11211 stats

Q7: 如何配置Memcached以守护进程方式运行? ​

A7: 在Windows上,Memcached作为Windows服务运行,相当于守护进程方式。可以使用以下命令安装为服务:

cmd
memcached.exe -d install

Q8: 如何监控Windows上的Memcached性能? ​

A8: 可以使用以下工具监控Windows上的Memcached性能:

  • memcached-tool:Memcached自带的监控工具
  • MemAdmin:Web-based管理工具
  • Zabbix:系统级监控和告警
  • Prometheus + Grafana:全面监控和可视化

Q9: 如何优化Windows上的Memcached性能? ​

A9: 优化Windows上的Memcached性能的方法包括:

  • 调整Memcached配置参数
  • 优化系统参数,如虚拟内存、关闭不必要的服务
  • 优化数据大小和键设计
  • 增加Memcached节点数量
  • 使用高效的客户端库

Q10: 如何备份Windows上的Memcached数据? ​

A10: Memcached本身不支持数据持久化,可以通过以下方法备份数据:

  • 使用第三方工具,如memcached-dump
  • 在应用层实现数据备份,定期将数据写入磁盘
  • 考虑使用Redis,它支持多种持久化方式