Memurai
发布时间:2026-10-15 | 浏览:1
由 Azure99 · 2020-05-27
Memurai是一种Windows下的Redis兼容实现,第一次邂逅Memurai是在2019年暑假,当时在Windows上使用老旧的Redis 3.x构建时遇到了一些奇怪的问题,找不到解决方案。跑虚拟机/Docker Desktop的话启动慢并且吃资源,WSL1兼容性(I/O太差)又不给力。折腾许久,最后在StackOverflow上发现了这个Redis的兼容实现–Memurai。当时Memurai还是1.x,似乎在Preview阶段,兼容Redis5的API,试用一番后还算满意,没有什么大坑,日常使用Windows开发时可以考虑使用。
一年多过去了,它依旧不温不火(甚至热度更低了),大概是因为在Windows上跑一个Redis实例本身就不是刚需,加上WSL2的诞生,性能和稳定性略更胜一筹,使得Memurai更无人问津了。对了,它还有商业化的计划,免费版本存在限制。但不可否认,它依旧是一个轻量易用的Redis兼容实现,对于不想折腾WSL2或者的机器性能吃紧的同学来说是一个选择。
在Windows下使用Redis的一些建议
使用原生3.x构建 :不推荐,早已被官方放弃支持,版本太老
使用虚拟机 :不推荐,大材小用,启动慢,吃资源
使用Docker Desktop :不推荐,基于Hyper-V,本质还是虚拟机,启动慢,吃资源
使用Memurai : 较为推荐 ,轻量、易用,但不能完全与Redis划等号,免费版存在限制
使用WSL2 : 推荐 ,依旧基于Hyper-V,但拥有很多黑魔法,启动快,支持内存动态分配
注:WSL2依旧存在page cache回收策略不合理导致占满宿主内存的问题,临时的解决方法是限制最大内存用量。
从历史上看,寻找受支持的Redis Windows版本的开发人员很不幸。没有Redis官方的Windows构建,大多数其他选择都有相同的缺点:不是原生的Windows程序。开发人员不能将广受欢迎的Redis数据结构完美集成到Windows基础结构中,也无法享受原生实现带来的性能和可靠性的提升。此外,官方已放弃Windows下的Redis,连Redis的正式Microsoft Open Tech版本也已存档不再更新。
PS:得益于Hyper-V优秀的虚拟化性能,WSL2中运行的Redis依旧能吊打Memurai
Memurai是Windows平台下Redis 5的兼容实现。它旨在提供企业级Windows环境所需的可靠性和性能。与Redis一样,Memurai使用基于内存的数据结构来大幅提升性能,并且Memurai支持了所有Redis功能,例如持久性,复制,事务,LUA脚本,高可用性,发布/订阅,群集,模块,Stream和LRU数据驱逐。并且,Memurai支持所有Redis 5的驱逐策略。
官方网站: https://www.memurai.com/
下载页面: https://www.memurai.com/get-memurai
1.我们打开下载页面,找到 Developer Edition ,点击 FREE DOWNLOAD 即可下载免费版本。
事实上,Memurai还提供企业版,不过真到大规模应用,有几个人会选择Win Server呢?
2.下载完成后我们得到了一个标准msi安装包, 直接安装 就可以了。
3.安装过程中可以配置一下 端口 ,默认会安装为 服务 。
4.安装完就可以退出了,Memurai已经被安装为系统服务。
安装时会自动将Memurai的 根目录 添加到 环境变量PATH 中,我们来看一下有什么内容。
可以看到可执行文件都是以 memurai 开头,比如 redis-cli 就是 memurai-cli 。
我们需要用 memurai-cli ,两者只是bin名字不同,API是完全兼容的。
配置文件为根目录下的 memurai.conf ,它提供和Redis一样丰富的配置,修改完用 net 指令重启服务就可以了。
更多选项可查阅官方文档 https://docs.memurai.com/ 。
Memurai并不自带 redis-benchmark 工具,可以到官方的3.x构建中拿一个用
由于时间关系,这里完全使用默认参数做一个压测
篇幅所限,删除了结果中的参数,压测参数如下
还是比较优秀的,性能比在WSL2中运行的Redis实例低20%左右,但它是原生应用,静默状态下对宿主机资源的占用非常低。在WSL2中跑Redis虽然性能好,但吃宿主内存的缺点不容忽视。如果只是用Memurai做日常开发的兼容,那么它在易用性和省资源上有很大的优势,内存吃紧的小伙伴可以尝试一下它。
标签: Docker Linux Memurai redis windows wsl
底层码农,休闲音游玩家,偶尔写写代码
小米骁龙8E5手机解锁BL + Root + 隐藏环境 2026-03-10
小米骁龙8E5手机解锁BL + Root + 隐藏环境
Navicat Premium 15.x安装与激活 2019-02-07
Navicat Premium 15.x安装与激活
手动为WSL2安装Ubuntu实例 2021-02-14
手动为WSL2安装Ubuntu实例
@Azure99 Code is poetry.
AI / 开发 工程师如何用好Coding Agent 2026-06-10
工程师如何用好Coding Agent
AI Agent编码场景:哪家 Coding Plan 更耐用? 2026-04-23
Agent编码场景:哪家 Coding Plan 更耐用?
系统 小米骁龙8E5手机解锁BL + Root + 隐藏环境 2026-03-10
小米骁龙8E5手机解锁BL + Root + 隐藏环境
系统 小米骁龙8E5手机解锁BL + Root + 隐藏环境 2026-03-10
小米骁龙8E5手机解锁BL + Root + 隐藏环境
开发 纯JS实现WordPress简单文章目录功能 2020-03-23
纯JS实现WordPress简单文章目录功能
Rainng / 开发 JerryFramework简介及入门教程 2020-09-13
JerryFramework简介及入门教程
Lane Sun 说: 这篇总结得真的好啊。。。国内的 Codi…
TTT 说: 大佬,为啥无法访问此页面啊
刺猬兽 说: 已经不行了 要企业或者高校认证 高中生表…