baeldung列举了redisson作为redis客户机的几个好处。所以我决定用它。出于poc的目的我使用的是单节点示例,可能以后会切换到其他一些。已检查redisson连接池,但它需要主从配置。如何使它与单个示例一起工作?
我希望池中的get()方法返回redisclient,但它返回future。该方法还以rediscommand作为参数。我希望一旦我得到redisclient,我就可以对它做一些Map操作,如rmap示例所示。有没有一个文档,我可以遵循,说明如何使用rediscommand,但首先是什么(工作代码的例子将是伟大的)?
我的用例很简单——我的服务接收到的请求需要大量的处理,所以我想针对每个请求缓存结果。有时如果响应太大,我们也会批处理响应。假设req1请求导致res1(没有批处理)->我想在redis map中保存res1作为req1的值。现在让我们说,但由于res1是巨大的,我们必须批处理它,并发送只有第1页与第2页的链接。在这种情况下,我想保存完全响应res1和第一页res1在redis中的100个条目。我使用的命名约定如下:
key value
Req1:allPages Res1
Req:page1 page 1 of Res1
Req:page2 page 2 of Res1
..
类似地,对于其他请求,如果redis中已经不存在,则保存分页和完整响应。
是我的命名惯例标准还是其他一些模式正在流行?以及如何在单节点上使用redisson连接池。后来当我切换到说主从的时候,这个迁移怎么办?还有什么是rediscommand以及如何创建和使用它?
我使用的是最新版本的redisson:
<dependency>
<groupId>org.redisson</groupId>
<artifactId>redisson</artifactId>
<version>3.12.5</version>
</dependency>
1条答案
按热度按时间x6492ojm1#
如何在单节点上使用redisson连接池
您不需要自己维护连接池。只需定义单个节点的配置,如这里所述
还有什么是rediscommand以及如何创建和使用它?
您不需要使用像redisclient这样的低级对象。只需在这里找到适合redis命令的api