在Windows [Redis 64Bit]下是否可以在生产环境中使用?

chs*_*ord 1 windows redis

我在开发环境Redis-64上使用了此版本。

我想知道此版本是否适合生产环境吗?

如果可以使用,那么与Linux下相比,需要注意什么?

mis*_*ion 5

从3.0.3版开始,Windows端口开发人员放弃了dlmalloc,开始使用jemalloc作为内存分配器。实际上,该端口已考虑用于生产用途。3.0.500版本已被ms开发人员批准用于生产(请参阅此处)。

还有一些麻烦,所以他们如何绕过unix分支将数据保存到磁盘。微软开发人员将其称为端口point-in-time heap snapshot。这是在生产中使用时最有争议的部分:

Windows下的Redis所需的内存可能是Linux版本中所需的内存的三倍。这种现象被认为是正常现象,因为Windows中的交换文件很容易比实际RAM大小大3倍。

我认为这仅在使用Redis作为LRU缓存或根本不将数据保存到磁盘时才可接受。

如果Redis节点使用大量内存,则至少Windows下的Redis绝对容易受到攻击。例如-我们尝试将Redis用于服务器上具有512 gb内存和2个SSD驱动器(raid 0中每个256 gb)用作系统磁盘的服务器上的Windows(v2.8,v3.0.3,v3.0.5)。Windows交换文件没有任何限制。我们的测试模拟了我们的生产-使用RDB进行大量写入和保存,并占用了约60-70%的内存。这是很多举手的行为,然后此节点尝试保存快照-内存消耗跳跃,保存期间连接冻结。这种行为永远不会在同一硬件上的undex linux上发生。