解决ASP.NET中Redis 每小时6000次访问请求的问题

简介: 原文:解决ASP.NET中Redis 每小时6000次访问请求的问题 虽然ServiceStack v4是商业支持的产品,但我们也允许免费使用小型项目和评估目的。上面的NuGet包中包含可以使用许可证密钥解锁的配额: 10 ServiceStack中的操作(即请求DTO) OrmLi...

原文:解决ASP.NET中Redis 每小时6000次访问请求的问题

虽然ServiceStack v4是商业支持的产品,但我们也允许免费使用小型项目和评估目的。
上面的NuGet包中包含可以使用许可证密钥解锁的配额:

  • 10 ServiceStack中的操作(即请求DTO)
  • OrmLite中的10个数据库表
  • PocoDynamo中的10个DynamoDB表
  • Redis客户端类型API中的20种不同类型
  • 使用Redis客户端每小时6000个请求

C#利用ServiceStack.Redis来操作Redis,它是Redis官方推荐的C#客户端,性能非常优越,使用也很方便,但是有如下的问题:
每小时只能访问Redis 6000次
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版本已经逐渐商业化了,普通版每小时只能访问Redis 6000次,要取消这个限制就要付费或者您也可以往回使用V3版本。
解决方案如下:
解决办法:

可以使用另外一个性能不错的StackExchange.Redis或者使用低于4的ServiceStack.Redis版本。

StackExchange.Redis下载地址:

https://github.com/StackExchange/StackExchange.Redis

低版本的ServiceStack.Redis下载地址:

https://github.com/ServiceStackV3/ServiceStackV3

这里由于我个人测试使用,变降低了版本。在vs中操作如下:
1.菜单栏-》工具-》NgGet工具包管理器-》程序包管理器控制台。

这里写图片描述

2.在下方出现的命令行中输入如下命令:
Install-Package ServiceStack.Redis -Version 3.0

这里写图片描述

这里写图片描述

3.命令行中显示成功降低版本。
然后进行测试,详细的搭建方法请见上两篇文章

http://blog.csdn.net/u010533180/article/details/52784696
http://blog.csdn.net/u010533180/article/details/52805792

降低版本后可能出现如下的问题:
这里写图片描述

修改的代码如下:

        /// <summary>
        /// 3.5以下版本的配置
        /// </summary>
        private RedisClient RedisSessionClient
        {
            get
            {
                if (!string.IsNullOrEmpty(redisCfg.RedisPassword))
                {
                    return new RedisClient( redisCfg.RedisServer, redisCfg.RedisPort) {  Password=redisCfg.RedisPassword};
                }
                return new RedisClient(redisCfg.RedisServer, redisCfg.RedisPort);
            }
        }

经过测试的效果图如下:
这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

上几篇文章4.5 版本的项目下载地址为:
链接: http://pan.baidu.com/s/1pKR3VrP 密码: 3anx

自己项目3.0版本的下载地址为:
链接: http://pan.baidu.com/s/1mhZH5Ss 密码: yvkk

目录
相关文章
|
缓存 NoSQL 网络安全
【Azure Redis 缓存】Azure Redis服务开启了SSL(6380端口), PHP如何访问缓存呢?
【Azure Redis 缓存】Azure Redis服务开启了SSL(6380端口), PHP如何访问缓存呢?
351 0
|
Go
在golang中发起http请求以获取访问域名的ip地址实例(使用net, httptrace库)
这只是追踪我们的行程的简单方法,不过希望你跟着探险家的脚步,即使是在互联网的隧道中,也可以找到你想去的地方。接下来就是你的探险之旅了,祝你好运!
703 26
|
NoSQL Linux Redis
每天百万访问也不怕,Redis帮你搞定UV统计
本文介绍了使用Redis实现高性能UV统计系统的方法。Redis凭借其内存数据库特性,支持毫秒级响应和自动去重,非常适合高并发场景下的访客统计。核心思路是利用Redis的Set数据结构作为"每日签到墙",通过记录用户访问ID实现自动去重,并设置24小时过期时间。文章提供了Python代码示例,展示如何记录用户访问和获取当日UV统计数据,还可扩展实现多页面UV统计。相比传统数据库方案,Redis方案更加轻量高效,是中小型网站实现流量统计的理想选择。
860 0
|
JSON 数据格式
.net HTTP请求类封装
`HttpRequestHelper` 是一个用于简化 HTTP 请求的辅助类,支持发送 GET 和 POST 请求。它使用 `HttpClient` 发起请求,并通过 `Newtonsoft.Json` 处理 JSON 数据。示例展示了如何使用该类发送请求并处理响应。注意事项包括:简单的错误处理、需安装 `Newtonsoft.Json` 依赖,以及建议重用 `HttpClient` 实例以优化性能。
688 2
|
数据采集 JSON API
异步方法与HTTP请求:.NET中提高响应速度的实用技巧
本文探讨了在.NET环境下,如何通过异步方法和HTTP请求提高Web爬虫的响应速度和数据抓取效率。介绍了使用HttpClient结合async和await关键字实现异步HTTP请求,避免阻塞主线程,并通过设置代理IP、user-agent和cookie来优化爬虫性能。提供了代码示例,演示了如何集成这些技术以绕过目标网站的反爬机制,实现高效的数据抓取。最后,通过实例展示了如何应用这些技术获取API的JSON数据,强调了这些方法在提升爬虫性能和可靠性方面的重要性。
429 1
异步方法与HTTP请求:.NET中提高响应速度的实用技巧
|
存储 消息中间件 NoSQL
Redis 入门 - C#.NET Core客户端库六种选择
Redis 入门 - C#.NET Core客户端库六种选择
1315 8
|
SQL XML 关系型数据库
入门指南:利用NHibernate简化.NET应用程序的数据访问
【10月更文挑战第13天】NHibernate是一个面向.NET的开源对象关系映射(ORM)工具,它提供了从数据库表到应用程序中的对象之间的映射。通过使用NHibernate,开发者可以专注于业务逻辑和领域模型的设计,而无需直接编写复杂的SQL语句来处理数据持久化问题。NHibernate支持多种数据库,并且具有高度的灵活性和可扩展性。
607 2
|
JSON NoSQL Java
springBoot:jwt&redis&文件操作&常见请求错误代码&参数注解 (九)
该文档涵盖JWT(JSON Web Token)的组成、依赖、工具类创建及拦截器配置,并介绍了Redis的依赖配置与文件操作相关功能,包括文件上传、下载、删除及批量删除的方法。同时,文档还列举了常见的HTTP请求错误代码及其含义,并详细解释了@RequestParam与@PathVariable等参数注解的区别与用法。
271 2
|
SQL 存储 关系型数据库
C#一分钟浅谈:使用 ADO.NET 进行数据库访问
【9月更文挑战第3天】在.NET开发中,与数据库交互至关重要。ADO.NET是Microsoft提供的用于访问关系型数据库的类库,包含连接数据库、执行SQL命令等功能。本文从基础入手,介绍如何使用ADO.NET进行数据库访问,并提供示例代码,同时讨论常见问题及其解决方案,如连接字符串错误、SQL注入风险和资源泄露等,帮助开发者更好地利用ADO.NET提升应用的安全性和稳定性。
975 6
【Azure Key Vault】.NET 代码如何访问中国区的Key Vault中的机密信息(Get/Set Secret)
【Azure Key Vault】.NET 代码如何访问中国区的Key Vault中的机密信息(Get/Set Secret)
278 3