问题标签 [redis-py]

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 回答
131 浏览

python - Python 语法 / REDIS

在 Linux 上使用 REDIS 的内置 redis-cli 时,我可以毫无问题地输入以下命令

在 python 脚本中使用 redis-py 输入此值时,我无法使其工作。我不断收到错误消息,说我必须插入 kwal 或字典。我假设这是因为 python 对引号和反斜杠的解释不同。有什么方法可以在不更改值的情况下执行命令?它的格式必须与上面看到的完全相同。我也试过 os 包来执行命令。

')

哪种有效,但将值输入到 REDIS 格式不正确

谢谢你。

0 投票
1 回答
325 浏览

python - 如何使用python在redis中创建嵌套结构?

我需要使用python在redis中制作上述结构。我已经在 python 中使用 redis-py 客户端建立了连接,如下所示:

请让我知道如何使用 python 在 redis 中创建、存储和获取值?

0 投票
1 回答
815 浏览

python - 如何使用zscan以相反的顺序遍历Redis中的排序集?

我在 Redis 中有一个排序集,优先级从 0 到 3。我想使用 python 迭代器从最高优先级到最低优先级遍历这个排序集zscan_iter。但是,使用zscan_iter给了我从 0 开始的项目。有没有办法颠倒顺序?不幸的是,reverse()仅适用于迭代器,不适用于 python 生成器。

我看到两个解决方案:

  1. 使用负优先级(所以使用 -3 而不是 3)
  2. 使用 对键切片进行分页ZREVRANGEBYSCORE,但是我更喜欢使用迭代器。

有没有其他方法可以做到这一点?

0 投票
0 回答
352 浏览

python - 无法通过 redis-py 使用自定义配置文件连接到 redis 容器

我可以使用以下命令运行普通的 redis docker 映像:

然后我可以按照我的预期通过 redis-py 访问数据库。但我想使用自定义配置文件,为此,我指定了我的 redis.conf 的路径并像这样创建容器:

容器的构建没有任何错误,我可以在其中看到 redis.conf 文件。问题是当我想通过 redis-py 对数据库做任何事情时,我收到以下错误:

我认为问题的根源应该是我编辑过的 redis.conf 文件,并在其中添加了以下几行:

没有它,它可以完美运行!那么知道如何克服这个问题吗?

0 投票
0 回答
33 浏览

redis - 如何将 UI 连接到连接到 redis 的网络库?

我有这个服务器和客户端('Raspberry pis')。现在我必须从 redis db 读取服务器和客户端并获取消息并在前端 UI 中显示它。我正在使用 DASH 框架工作。如何实现应用程序服务器并阅读实时更新在此处输入图像描述 类似于这张图片的内容,我没有使用芹菜和烧瓶。

服务器.py

客户端.py

0 投票
1 回答
8182 浏览

python - Python中Redis连接池的正确使用方法

两个不同的模块应该如何foo.pybar.py一个 Redis 连接池中获取连接?换句话说,我们应该如何构建应用程序?

我相信目标是为所有模块提供一个连接池,以便从中获取连接。

Q1:在我的示例中,两个模块是否从同一个连接池中获得连接?

Q2:是否可以在 中创建 RedisClient 实例RedisClient.py,然后将该实例导入到其他 2 个模块中?或者,还有更好的方法?

Q3:conn实例变量的延迟加载真的有用吗?

RedisClient.py

foo.py

酒吧.py


还是这样更好?

RedisClient.py

foo.py

酒吧.py

0 投票
2 回答
44 浏览

numpy - 通过 bytearray 从 ndarray 中选择行

我有一个从 redis 中提取的字节数组。

我想使用该字节数组从 ndarray 中选择行。


编辑两种解决方案都有效,但我发现@paul-panzer 更快


编辑 2实际上,该from_bytes方法不会返回我正在寻找的内容:

0 投票
1 回答
770 浏览

python - python redis客户端如何在保存到redis之前对数据进行编码

使用redis-py,我将键值保存到redis,for exp, 'gdf': 'gdfgdfgq' 到redis。之后我可以通过键检索该值。但是当我通过 redis-cli 检索值时,我得到了“\x80\x02X\a\x00\x00\x00gdfgdfgq\x01.”。这是什么?为什么我有一个额外的字符?非常感谢任何帮助。

0 投票
2 回答
4144 浏览

python - 更快地迭代 redis db 中所有键和值的方法

我有一个大约有 350,000 个键的数据库。目前我的代码只是遍历所有键并从数据库中获取它的值。

然而,这需要将近 2 分钟才能完成,这似乎真的很慢,redis-benchmark给出了 100k reqs/3s。

我看过流水线,但我需要返回每个值,以便最终得到一个键值对的字典。

目前我正在考虑如果可能的话在我的代码中使用线程来加快速度,这是处理这个用例的最佳方式吗?

这是我到目前为止的代码。

0 投票
1 回答
477 浏览

python - Redis 幂等地设置键上的 ttl

我正在尝试使用管道来处理不断添加到 redis 数据库的数十万个键。

如果键上不存在 ttl,Redis 中是否有设置 ttl 的幂等方法?