python - redis-py 管道可以有多少个命令?

标签 python redis redis-py

我想使用管道来减少我的程序和redis-server之间的交互次数。
我可以在管道中设置许多命令,但我找不到任何描述可以在管道中设置的最大命令数的文档。

有什么建议吗?提前致谢。

最佳答案

不确定是否有最大值,但我不认为您希望达到最大值以防万一。

在大多数情况下,将管道大小限制为 100-1000 次操作可获得最佳结果。但是,您可以进行一些基准研究,其中包括您发送的典型请求。 流水线请求通常很好,但请记住,响应会保存在 Redis 内存中,直到所有流水线请求都得到服务,并且您的客户端会等待所有请求的长回复。

您应该尝试找到并发连接、流水线请求和 Redis 内存的最佳平衡点。

在管道的最后一个查询发送到 Redis 之前,您的客户端不会开始读取回复。当管道太长时,它有可能阻塞。

您可以使用 redis-benchmarkmemtier_benchmark . Here's有关 memtier_benchmark 的更详细描述和说明。

当您找到管道请求数和连接数时,您应该在您的应用程序中使用您的 redis-py 客户端实现它。

关于python - redis-py 管道可以有多少个命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27007530/

相关文章:

python - 使用 seaborn 的密度图

python - BeautifulSoup:不要在重要的地方添加空格,在不重要的地方删除它们

python - Flask 应用程序无法在浏览器中加载

python - 使用Python的OpenCV-尝试将图像覆盖在网络摄像头源上

python - 如何将参数传递给Python中的可调用迭代器函数?

java - Redis 是否有可嵌入的 Java 替代方案?

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

ruby-on-rails - 私有(private)方法中的 HGET 不返回哈希

redis - 从 redis-py 执行自定义 redis 命令