问题标签 [redisson]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
705 浏览

redis - Java Redisson 集成

我有一个场景,我需要使用的数据结构是Map<String,Map<String,List<String>>.

我想使用 Redis 将这些数据存储为内存缓存。

我感兴趣的一件事是,使子地图的“钥匙”(在这种情况下是Map<String,List<String>>)在说 5 分钟后到期。

我在 Redis (Redisson implementation) 中尝试过这样的事情,

但是当我这样做时,我收到以下错误消息(排除了根本原因)

是否有一种解决方法可以将这样的数据结构放入 Redis 中?

0 投票
1 回答
153 浏览

redis - Redisson 内部如何实现 Redis 命令?

与 Jedis 相比,我正在探索 redisson 并决定使用它的简单性,并且我在互联网上发现的其他好评很少。

我将使用 redisson 的环境是 Storm 拓扑。

在 Storm 拓扑中通过应用程序级代码创建线程不是一个好主意

我在一定程度上深入挖掘了 redisson 代码,它在内部将命令转换为异步和命令执行器和承诺。

只是想确认一下。redisson 是否在内部产生线程来实现这一点。

一个跟进。Jedis在其内部实现中是否也在做同样的事情。请在您的答案中考虑管道实施

0 投票
2 回答
225 浏览

mysql - 通过 redisson 避免重复行

我确实有一张桌子,Foo。我在某些事件上向此表添加行。当前的整体设计使得无法避免重复消息。这会导致向表中添加重复行。

我不能对表设置唯一约束,因为有不同类型的消息成为该表中的行。我想避免仅针对特定类型的消息重复。

由于重复消息经常同时出现,并且该应用程序在多个节点上运行,我决定使用 radisson 来获取分布式锁。但是,它似乎不起作用。我仍然在表中得到重复的行。

根据用户 ID、日期和类型检测重复消息。下面是简约的演示代码。我正在尝试在写入之前进行读取,并且此读取发生在跨应用程序节点的同步块中。

感谢对此的任何投入。

0 投票
2 回答
1783 浏览

redis - Redisson.create 失败并出现 IllegalArgumentException:主机名不能为空

尝试使用 Redisson 连接到 Redis(在 Docker 上)......简单的东西......

Config config = new Config(); config.useSingleServer().setAddress("redis://192.168.99.100:6379"); RedissonClient redisson = Redisson.create(config);//第 3 行

但是我收到了这个错误(在第 3 行)——我错过了什么吗?

Exception in thread "main" java.lang.IllegalArgumentException: hostname can't be null at java.net.InetSocketAddress.checkHost(InetSocketAddress.java:149) at java.net.InetSocketAddress.<init>(InetSocketAddress.java:216) at org.redisson.client.RedisClient.<init>(RedisClient.java:105) at org.redisson.connection.MasterSlaveConnectionManager.createClient(MasterSlaveConnectionManager.java:326) at org.redisson.connection.MasterSlaveConnectionManager.createClient(MasterSlaveConnectionManager.java:314) at org.redisson.connection.SingleEntry.setupMasterEntry(SingleEntry.java:47) at org.redisson.connection.MasterSlaveConnectionManager.initEntry(MasterSlaveConnectionManager.java:263) at org.redisson.connection.MasterSlaveConnectionManager.init(MasterSlaveConnectionManager.java:231) at org.redisson.connection.MasterSlaveConnectionManager.<init>(MasterSlaveConnectionManager.java:159) at org.redisson.connection.SingleConnectionManager.<init>(SingleConnectionManager.java:48) at org.redisson.config.ConfigSupport.createConnectionManager(ConfigSupport.java:168) at org.redisson.Redisson.<init>(Redisson.java:111) at org.redisson.Redisson.create(Redisson.java:151)

0 投票
2 回答
2519 浏览

java - 带有 Sentinel 的 Redisson 客户端引发异常

我正在使用具有以下配置的 Redisson 连接到 Sentinel 服务器:

但是,当我运行此代码时,创建客户端时出现以下错误:

我想知道我是否遗漏了 redisson 配置中的任何内容,或者我的哨兵服务器配置不正确。

0 投票
1 回答
6923 浏览

java - 在 Redis 中存储大型复杂 java 类对象的最佳方法?

在 Redis 中存储嵌套和复杂的 java 对象的最佳方法是什么。我们的做法如下。

我们正在使用Redisson Java 客户端库进行 Redis 交互。请看下面的代码:

同样,我们使用 get 从 redis 填充我们的 myObject,而不是 put。

由于大数据存储在 redis 中,我们增加了超时,我们收到以下异常:

命令的命令执行超时:(EVAL)带参数...

请同时回答以下问题:

  1. 这是将巨大的复杂 java 对象放入 Redis 的最佳方式吗?(数据可能在 1GB 左右)
  2. 我们的团队是 Redis 的新手,我们已经阅读了 Redis 给出的良好性能,我们应该使用它来存储复杂的数据还是仅在小的单个 String 作为值的情况下才好?(如果是,对我们的用例有什么建议)

谢谢。

0 投票
2 回答
4018 浏览

redis - 使用redisson如何检查redis中是否存在给定的键

我有一组密钥,我想检查我的 redis 数据库中是否存在这些密钥。我如何使用 redisson 库来做到这一点?

0 投票
1 回答
376 浏览

redis - Redis Cache - 使用 Redisson 访问 HMSET

我已HMSET存储在 Redis 缓存中,如下所示

现在如何使用User1Redisson 中的键获取键和值映射?另外如何获得特定键和用户的价值?

我试过了

但它没有用。

0 投票
0 回答
101 浏览

redisson - 使用 Redisson 进行缓存时如何静默失败?

我正在使用 Redisson 进行缓存。如果我的 Redis 实例离线,有什么方法可以让 Redisson 静默失败?

因为我使用 Redis 只是为了缓存,所以暂时忽略一些失败并记录它是可以的。

0 投票
1 回答
338 浏览

java - Redisson-RSortedSet

我需要保留添加到 Redis 中 SET 的元素的顺序。为此,我将 RSortedSet 与自定义比较器一起使用。

这里面临的问题是,与 RSetCache 不同,我无法使此 SET 中的元素过期。

是否有解决方法来实现这个用例?