破解ServiceStack.Redis每小时6000次限制

在.net里咱们操做Redis经常使用的组件就是ServiceStack.Redis了,可是这个从4.0版本后开始商业化了,咱们在使用的时候, 会有不少限制:html

1.类型限制,编辑器

类型限制是20,这个组件自带序列化功能, 使得咱们能够直接把对象保存到Redis库里, 可是咱们保存类型复杂的时候, 就会有这个限制来报错.工具

这个在使用中问题不大,不会影响大的使用.咱们能够在操做前,先把对象用其余工具好比Newtonsoft序列化成string字符串, 这个问题就解决了..net

下面讲讲另外一个很是影响使用的限制.3d

2.每小时访问次数限制htm

这个组件每小时默认访问次数是6000次的限制,这个在一个稍微大一点的项目里, 没几分钟就够了, 除非购买license或者下降版本使用,下降版本不考虑了,对象

如今说说怎么解决6000次限制的问题blog

经过上图知道, 这个变量是用来保存访问次数限制的字符串

下面咱们要作的就是把这个值改大一些, 直接改为int 的最大值string

首先咱们以16进制来打开该文件, 而后查找6000对应的值,从上图咱们知道 这个是int类型存储的, int 是实用的4个字节来存储的 ,

咱们把6000转换成字节形式是 70 17 00 00,

以下图

咱们直接修改该位置就好了,把 70 17 00 00 替换成 FF FF FF 7F,也就是int的最大值2147483647

而后把这个文件另存一下, 就能够直接使用了,

从ILSPY里咱们能够看到,这个最大限制值已经变了.

接下来咱们在看看实际实用的状况:

如图所示 从0到10000循环, 没有抛异常提示.

 

目标文件:ServiceStack.Text.dll

16进制编辑器   https://www.fixdown.com/soft/542.html

搜索文件:70 17 00 00

替换成 FF FF FF 7F

相关文章
相关标签/搜索