ServiceStack.Redis 请求次数6000次异常
原文:ServiceStack.Redis 请求次数6000次异常
Redis是一个非常NB的内存级的数据库,我们可以把很多”热数据“(即读写非常多的数据)放入其中来操作,这样就减少了和关系型数据库(如SqlServer/My Sql等)之间的交互,程序的响应速度也大大提升。
C#利用ServiceStack.Redis来操作Redis,它是Redis官方推荐的C#客户端,性能非常优越,使用也很方便。
ServiceStack.LicenseException: The free-quota limit on '6000 Redis requests per hour' has been reached. Please see https://servicestack.net to upgrade to a commercial license or visit https://github.c
开始本地测试的时候并没有发现,因为我们的数据量小,每小时访问Redis次数也少,但是到了服务器上发现老是报这个错误:
The free-quota limit on '6000 Redis requests per hour' has been reached. Please see https://servicestack.NET to upgrade to a commercial license.
在ServiceStack的官网(https://servicestack.Net/download)上看到了关于这个错误的说明:原来ServiceStack v4版本已经逐渐商业化了,普通版每小时智能访问Redis6000次,要取消这个限制就要付费或者您也可以往回使用V3版本。
虽然ServiceStack v4是商业支持的产品,但我们也允许免费使用小型项目和评估目的。
上面的NuGet包中包含可以使用许可证密钥解锁的配额:
-
- 10 ServiceStack中的操作(即请求DTO)
- OrmLite中的10个数据库表
- PocoDynamo中的10个DynamoDB表
- Redis客户端类型API中的20种不同类型
- 使用Redis客户端每小时6000个请求
好在是开源的,主要限制免费配额功能在ServiceStack.Text类库下的LicenseUtils.cs文件中,仅需从GitHub上下载源码后添加一行代码重新编译即可解除限制,如下图:

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
手把手 | 教材太贵?一小段Python代码帮你自动翻页和扫描
反思通常是一件有益的事,对程序员来说就更是如此。我的第一个Python项目距今已经两年,但我仍然常常想起它,所以我写了这篇文章与大家分享。作为一名航空航天工程专业的学生,我第一次学习Python是想要避免使用电子表格。当时的我还不知道这是一个多么明智的决定。 我的Python启蒙书是Al Sweigart先生写的《Python编程快速上手——让繁琐工作自动化》(Automate the Boring Stuff with Python)。这是一本很好的应用型书籍,它包含了一些能够完成有用任务的简单程序。当我面对一个新的问题时,我会寻找一切机会去使用它来解决问题。当时我遇到了一个亟待解决的问题——我需要使用一本价格高达200刀的教材。 购买一本教材,我个人的预算是不超过20刀(《让繁琐的工作自动化》在网上可以免费阅读)。而且我不愿意去租
- 下一篇
多线程之线程池(六)
Java中线程池是运用最多的并发框架,几乎所有并发的程序都可以使用线程池来完成。阿里巴巴Java开发手册中明确指出: 线程资源必须通过线程池提供,不允许在应用中自行显示创建线程。 与文无关 在实际的生产环境中,线程的数量必须得到控制,盲目的大量创建线程对系统性能是有伤害的,合理使用线程好处: 减少在创建和销毁现场上所消耗的时间和系统资源 提高响应速度,无需创建可以直接运行 提高线程的可管理性。使用线程池可以进行统一分配,调优和监控,但是要做到合理利用线程池,必须对其原理了如指掌。 线程池工作原理 当向线程池提交一个任务的时候。 先看线程池中的核心线程是否有空闲的,如果有创建一个工作线程来执行任务。如果核心线程都在工作,那么进入下一步 判断任务队列是否满了,如果任务队列未满,则把任务存储到任务队列,执行下一步。如果满了,执行拒绝策略。 添加到任务队列之后,再判断核心线程是否有空闲的,如果没有空闲的,那么尝试创建新的非核心线程执行任务。 // 线程池处理步骤 public void execute(Runnable command) { if (command == null) throw...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS6,CentOS7官方镜像安装Oracle11G
- Mario游戏-低调大师作品
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS关闭SELinux安全模块
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果