副标题: 评论更精彩,教你怎么解决64位Windows版Redis狂占C盘的问题.

MS Open Tech 技术团队近期花了非常多时间来測试最新构建的Windows版Redis(可在 MS Open Tech Github 仓库下载). 当我们測试计划快要完毕时,我们觉得应该分享一些振奋人心的结果。

在压力測试的第一阶段,我们让Redis在Windows上进行各种測试,执行时间从1天到16天,以及简单的单master配置,到例如以下图所看到的的更复杂的配置,包含1个Master以及4个replicas。 你能够在 我们的wiki页面 看到使用的整体測试策略和配置.

測试结果令人振奋 —— 我们仅仅发现了一个 BUG,当然我们已经修正了.

这些已经完毕的測试是基于Linux版的Redis2.6.8迁移到 Windows 版的, 这个版本号完毕了我们在1月宣布的全部目标, 比方支持64位系统。

我们的目标是确保开发人员能够放心地在Windows上使用Redis,包含高靠性要求的业务场景. 我们计划继续在更“严苛”的场景中进行測试, 确保我们没有漏过不论什么东西。

假设您对业务场景和測试计划/策略有什么意见或建议,请务必告诉作者们。

我们非常乐意使用Redis开发人员觉得适合的随意app或场景。

评论更精彩

1楼:

非常高兴看到你们的进步. 我们喜欢在分布式项目中使用Redis,但一直执行独立的linux服务器或Redis专属的虚拟机上。

当然这也不是什么大事啦,依据详细情况决定吧。

干得不错!(Good work!)

2楼:

Good work! 做windows上做开发或者简单測试时确实是不错的。

3楼:

Redis 2.8.12 —— 我有两个版本号的 redis-server.exe : 一个是32位,还有一个是64位, 在启动这两个版本号时都会创建一个 RedisQFork.dat文件, 当我执行32位exe时这个文件的大小是500 MB, 而执行64位时RedisQFork.dat文件变成了 16GB,这就是问题所在。

那么请问有什么方法(比方配置某些參数)能让Redis不去创建这个16GB 的文件吗?

(顺便说一下我的服务器是 windows 2012, 所以我希望能使用64位的exe), 回到问题… 我想说的是有没有什么办法让redis不要去创建这个巨大的文件,或者假如必须创建这个文件, 那有什么办法能够让Redis去其它磁盘或网络上(unc路径)创建呢, 比方有大容量存储空间的地方。

你能顺便解释一下这个文件的作用是什么吗。

谢谢!

4楼:

我也遇到了和 Rushdeep 一样的问题, 就是在64位版本号上 RedisQFork_nnnn.dat 文件占用16GB磁盘空间的问题. 这是一个bug吗?

5楼:

我碰到了相同的问题. 我不确定 RedisQFork 文件是否变小一点, 但我确定, 你能够通过设置Redis启动參数 heapdir 来调整这个文件的位置. 比如: redis-server.exe -heapdir D:\redisdata

铁锚备注:

当然啦,铁锚也碰到这个问题好久了.今晚上被 向上老大指点了一番, 知道了人生不应该瞎混的道理,所以回家来就着手解决问题,百度一搜 RedisQFork,就发现了这篇文章,当然,依照5楼的处理思路,这个算是攻克了.

我在 redis.windows.conf文件里搜索 "heapdir",然后在默认凝视掉的内容以下加入一行,指定Redis内存映射文件(memory mapped file)存放的路径:

# heapdir指定内存映射文件路径名,不能是文件名称
# heapdir <directory path(absolute or relative)>
heapdir D:/temp/redis_heapdir/

详细文件和文件夹就请你依据自己的磁盘进行指定啦. 我的症状和情况是这种, 16GB内存,Windows版64bit的Redis,启动Redis后就在C盘的 C:\Windows\ServiceProfiles\NetworkService\AppData\Local\Redis 文件夹以下生成一个16GB大小的 RedisQFork_8792.dat 文件(8792是本次启动的进程PID, 关闭redis 则此文件自己主动被删除). 本来当初为了省钱仅仅上了64GB的固态硬盘,结果16G一吃下来,C盘就仅仅有16GB空余空间,自从设置到D盘,重新启动以后,感觉强迫症就好多了。

当然,铁锚要废话不是想说这些,而是想引入2个參数:

# maxheap指定最大heap字节数,比方 10000000
# maxheap <bytes> # maxmemory 指定最大使用内存,单位:字节
# maxmemory <bytes>

详细的參数请參考配置文件内的说明,一搜索就知道.(主要是铁锚配置这两个參数就一直出错,半天启动不起来,等研究明确再说吧.)

原文链接: Redis on Windows – stable and reliable

原文日期: 2013-04-22

翻译日期: 2014-11-16

翻译人员: 铁锚: http://blog.csdn.net/renfufei

CNCounter翻译文章文件夹: https://github.com/cncounter/translation

可靠的Windows版Redis的更多相关文章

  1. MS Open Tech 技术团队构建可靠的Windows版Redis

    可靠的Windows版Redis 副标题: 评论更精彩,教你怎么解决64位Windows版Redis狂占C盘的问题. MS Open Tech 技术团队最近花了很多时间来测试最新构建的Windows版 ...

  2. 硬盘杀手!Windows版Redis疯狂占用C盘空间!

    关键词:Redis占用C盘,Windows Redis,64位Windows版Redis疯狂占用C盘空间,redis启动后创建RedisQFolk_****.dat文件.redis-server.ex ...

  3. .net core 使用windows版redis

    在项目中为了减少程序占用内存(将结果保存在全局变量里面,会占用内存),要求使用redis.开始了爬坑的过程.o(╥﹏╥)o c#操作redis 基本就这3中情况: ServiceStack.Redis ...

  4. 硬盘杀手!Windows版Redis疯狂占用C盘空间【转】

    [问题的原因] Windows版Redis启动后,会在C盘自动创建一个很大的文件,C:\Users\{你的用户名}\AppData\Local\Redis\RedisQFolk_****.dat 我们 ...

  5. Windows版Redis如何使用?(单机)

    使用Windows版Redis 1.下载Windows版本的Redis 2.在redis目录里创建redis.conf ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ...

  6. 使用 Redis 源码编译发布 Windows 版 Redis For Windows 发行包

    Redis 是个高性能的键值数据库,现在日常项目开发过程中,目前个人开发项目基本都会用到 Redis,主要是用来做 缓存 和 分布式锁 的底层支持,个人喜欢用 .NET 技术体系,所以一般部署也是用 ...

  7. 下载安装windows版Redis

    链接       https://github.com/MicrosoftArchive/redis/releases 选择版本下载 在redis目录打开cmd命令输入 redis-server.ex ...

  8. Windows版Redis主从配置

    一.下载 从github上下载Redis的zip包,地址:https://github.com/MicrosoftArchive/redis/releases Redis本身不支持windows,这是 ...

  9. windows版redis报错:本地计算机上的Redis服务启动后停止

    解决 1.如果需要临时启动Redis 使用命令:redis-server.exe   redis.windows.conf   --maxheap 200m 说明:200m是指定最大堆内存是200m, ...

随机推荐

  1. 【codeforces 235B】Let's Play Osu!

    [题目链接]:http://codeforces.com/problemset/problem/235/B [题意] 让你玩一个游戏,游戏结果由一个长度为n的01字符组成; 这个结果的分数与连续的1的 ...

  2. 接口測试-HAR

    參考文章 雪球的 HttpApi 接口測试框架设计 HAR(HTTP Archive)规范 神器--Chrome开发人员工具(一) HAR是什么 一句话:关于HTTP所有的信息的一种文件保存格式 HA ...

  3. 剑指offer面试题26-复杂链表的复制

    题目: 请实现函数ComplexListNode* Clone(ComplexListNode* pHead).复制一个复杂链表. 在复杂链表中.每个节点除了一个m_pNext指针指向下一个节点外,另 ...

  4. HDOJ 5299 Circles Game 圆嵌套+树上SG

    将全部的圆化成树,然后就能够转化成树上的删边博弈问题.... Circles Game Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: ...

  5. iOS 常见小问题

    1. iOS 编译后上下有黑边 ? 缺少启动图片 2.Failed to instantiate the default view controller for UIMainStoryboardFil ...

  6. Opencv Mat矩阵中data、size、depth、elemSize、step等属性的理解

    data: uchar类型的指针,指向Mat数据矩阵的首地址.可以理解为标示一个房屋的门牌号: dims: Mat矩阵的维度,若Mat是一个二维矩阵,则dims=2,三维则dims=3,大多数情况下处 ...

  7. Aspose.Words 操作指北

    前言:   这段时间因为业务需求,需要做一个word 导出,表单式的那种,因为之前也做过NPOI 操作 Excel 这类型的问题,所以总以为word 导出应该挺简单的,一直没有研究这块,汗颜,天真大意 ...

  8. PHP简介 变量 输出

    一.PHP概念 Hypertext Preprocessor 超文本预处理器,是一种开源脚本语言,语法吸收了C语言,Java,Perl的特点,用于web开发领域, PHP是将程序嵌入到Html文档中执 ...

  9. 从 MVC 到微服务,技术演变的必经之路

    架构模式演进 CGI 模式 图 1 CGI 出现于 1993 年,图 1 是 CGI 模式比较简单的结构图. MVC 模式 开源电商软件等都是采用 MVC 模式,MVC 模式是做软件开发必学和必经历的 ...

  10. STM8S103之串口

    1.串口发送中断标志的清除,只能靠往UART_DR中写数据,这个的本质含义是,发送中断是指发送完成中断,所以往UART_DR中写数据可以清除发送中断标志.但是这样又会导致新写的数据完成后又会产生中断, ...