问题标签 [jedis]

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 投票
2 回答
2077 浏览

java - 根据某个值从 Redis 哈希中删除多个项目

根据项目的值是否包含特定的子字符串,从哈希中删除一堆项目的最有效方法是什么?据我所知,实际上并没有一种方法可以在一个简单的块中做到这一点。我必须从 Java 列表中获取该哈希的所有值,然后遍历该列表直到找到我需要的内容,然后从哈希中删除它的键,并一遍又一遍地重复相同的过程。

我尝试的另一种方法是将哈希项目的 id 引用放在单独的列表中,以便稍后通过一次调用,我可以获取应该删除的项目的 id 列表。这有点好,但是,我使用的 redis 实现(Jedis)仍然不支持删除多个哈希键,所以我再次束手无策。

Redis 不支持参照完整性,对吧?这意味着,好的,存储在 Redis 列表中的键是对哈希中项目的引用,所以如果我删除列表,则哈希中的相应项目将被删除。Redis 中没有类似的东西,对吧?

我将不得不经历这个循环并分别删除每个项目。我希望至少有一个类似块的东西,我可以收集所有 1000 个命令,并在一个完整的调用中发送它们,而不是 1000 个单独的调用。

0 投票
1 回答
1161 浏览

java - 将jedis与spring一起使用,但不与spring-data lib一起使用,存储池在哪里?

在绝地文档中,它说要创建一个池:

JedisPool pool = new JedisPool(new JedisPoolConfig(), "localhost");

而且我应该将其静态存储在某个地方。

我知道 spring 有一个正在开发中的 spring-data 库,但我现在只想使用这个库。

你建议我在哪里创建这个对池的静态引用?

我应该创建一个 JedisService 然后有一个返回这个池的公共方法吗?

我是否使用单例模式来执行此操作?返回前锁定?

0 投票
2 回答
625 浏览

java - Jedis 改变 Redis 的语义?

因此,Redis 将 zrange(和相关的排序集命令)指定为 ORDERED 的结果集(可能是没有重复的列表?)。

为什么 Jedis(官方和推荐的 REDIS 客户端)上的 zrange(和相关 API)返回一个 Set?根据定义,哪个没有排序的概念?

这直接违反了 redis 操作的语义。

这是 zrange jedis 2.0.0 的实现:


Jedis贡献者,你打算修复它吗?

0 投票
1 回答
5127 浏览

timeout - jedis pubsub 和超时:如何作为订阅者无限收听?

我正在努力创建一个 Jedis 客户端的概念,该客户端作为 Redis pubsub 频道的订阅者无限地监听并在消息进入时处理它们。

我的问题是,在一段时间不活动后,服务器会停止静默响应。我认为这是由于我订阅的 Jedis 客户端发生超时。

这可能真的是这样吗?如果是这样,有没有办法将这个特定的 Jedis 客户端配置为不超时?(虽然其他 Jedispools 不受某些全局设置超时的影响)或者,是否有另一种(最佳实践)方法可以实现我想要实现的目标?

这是我的代码,(修改/剥离显示):

在网络服务器启动期间执行:

new Thread(AkkaStarter2.getSingleton()).start();

AkkaStarter2.java

谢谢。

0 投票
1 回答
790 浏览

java - redis如何dump到多个文件而不是一个?

你好,我想问你两个问题。(我正在使用 java 和 jedis)

  1. 我想写2G的数据到redis,怎么写更快?
  2. redis是否将数据转储到多个文件中,而不仅仅是dump.rdb?比如数据太大到4G,数据会被dump到dump.rdb和dump2.rdb吗?
0 投票
1 回答
2518 浏览

redis - Jedis如何使用socket连接连接到redis服务器?

我在弄清楚如何使用 Jedis 库连接到 redis 套接字连接时遇到问题。

我知道如何通过网络端口连接:

但是套接字连接(列表中的第二个)不起作用。这些命令看起来与 redis-py(python 客户端)类似,但是当我尝试相同的语法时它不起作用。我还查看了 github 上的 jedis 源代码,但什么也没看到。有任何想法吗?

0 投票
5 回答
57784 浏览

jedis - 如何在 Redis 中使用 java 对象作为值

我对 Redis 很陌生。

我下载了 Jedis 并将其添加到我的类路径中。但是,它没有提供将 java 对象存储为“值”的方法

我是否遗漏了什么或者 Jedis 没有提供将 java 对象存储为值的方法?

谢谢,-文卡特

0 投票
2 回答
5512 浏览

database - redis 可以管道多个依赖于先前命令的命令吗?

我对 redis 非常陌生,并且仍在使用它。我想测试它是否与我的项目相关,但我不确定我正在运行的特定命令。SO 上的用户让我相信使用管道和事务的性能优势,所以我想我会问如何做到这一点。

基本上我有两个声明,我只想发布而不需要等待结果(似乎是管道衬里的一个很好的候选者。它看起来像这样:

它非常简单,但到目前为止,我一直在研究它的所有方法似乎都在等待 ValueX 是否存在的响应,并且因为我正在执行我的程序的十亿循环,所以它会停止运行。

这可能吗?如果它有帮助,我正在使用 Java,但还没有确定哪个客户端库(jedis 或 jredis,仍在测试)。实际上,我什至还没有完全确定 redis,但非常倾向于它(似乎对我正在做的速度很好),所以任何建议都是可以接受的。

0 投票
3 回答
938 浏览

java - Redis:初学者问题

我必须在我的 HashMultiMap 中存储超过 1 亿个键值(键可以有多个值)。现在,我想为此使用Jedis。我从这里下载- Jedis 2.0.0.0.jar 在这里推荐给我。现在,经过一番搜索,我找不到任何可以帮助我作为初学者的好文档:

1)如何使用 Jedis(具体来说,我是否必须将其视为 Java 中的普通 .jar 文件,例如 Guava)?

2)如何在Redis中实现HashMultiMap(key可以有多个值)?

3) 如何在 Redis 中执行所有的插入、搜索等操作。

4)我通过搜索 Redis 找到了许多选项,如 Jedis、Redis、Jredis 等。这些变化是什么?为了解决这个问题,我会喜欢哪一个?

任何信息和/或任何文件的链接都会对我有所帮助。对不起,如果我问任何愚蠢的问题,因为我不知道 Redis。所以,开始的想法对我来说很有价值。谢谢。

0 投票
1 回答
607 浏览

scala - Redis 队列顺序不正确

我正在使用 redis 存储一组有序的项目。这是一个示例代码:

当我运行生产者时,我得到

当我运行消费者时,我得到

为什么项目顺序不正确,这不是真正的先进先出。