当前位置: 首页 > 知识库问答 >
问题:

命令级超时

阙阳
2023-03-14

我使用莴苣客户端作为Redis集群客户端,因为它很好地支持集群Redis。

我遇到过的一个实际问题是在创建客户端时或拓扑刷新时,lettuce会发出“info”命令,这通常比正常的get命令需要更长的时间。设置一般超时,例如10ms,会导致客户端无法启动。

我想知道是否可以根据不同的命令类型设置命令超时。

更新:我已经阅读了源代码,发现我可以编写自己的TimeoutSource来在命令级别设置超时。

我发这个问题是因为我已经和《莴苣》的作者马克交流过了。我们认为在更广泛的社区中分享这个问题会很有帮助,因为有一天人们可能会遇到同样的问题。

共有1个答案

元嘉木
2023-03-14

可以通过超时选项,特别是时间外包来实现。

从5.1版开始,Lettuce提供了一个配置选项来应用配置的连接超时、固定超时(与连接超时无关)或每个命令超时。

配置超时的入口点是可以通过客户端选项提供的超时选项。

  • <代码>超时选项。启用(持续时间)使用固定超时

如果您实现了时间外包,那么您可以决定一个给定的RedisCommand应用什么超时。

 类似资料:
  • 问题内容: 因此,我试图使用子进程从python脚本中以超级用户身份运行一个进程。在ipython shell中,类似 工作正常,但是一旦将其粘贴到脚本中,我就会开始获得:。 我猜这是由于sudo处理ubuntu上的环境的方式。(我也尝试和与无济于事) 所以我的问题基本上是,如果我想以超级用户身份运行,并在需要时提示用户输入超级用户密码,我该怎么做?我无意在脚本中存储密码。 编辑: 我尝试将命令既

  • 使用方式 truffle [command] [options] 命令 build 构建一个开发中的app版本,创建.build目录。 truffle build 可选参数 --dist: 创建一个可发布的app版本。仅在使用默认构造器时可用。 查看6. 构建应用章节来了解更多。 console 运行一个控制台,里面包含已初始化,且随时可用的合约对象。 truffle console 一旦控

  • 我们已经定义了Lettuce客户端连接工厂,以便能够连接到定义自定义套接字和命令超时的Redis: 莴苣文档定义默认值: 默认套接字超时为10秒 默认命令超时为60秒 如果Redis服务中断,应用程序必须在300ms内接收超时。哪个值必须定义为最大值? Github示例项目:https://github.com/cristianprofile/spring-data-redis-lettuce

  • 本文向大家介绍Linux常用命令全集(超全面),包括了Linux常用命令全集(超全面)的使用技巧和注意事项,需要的朋友参考一下 系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI) hdparm -i /dev/hda 罗列一个磁盘的架构特

  • Redis Sentinel手动故障转移命令超时 [8]01 7月01:36:57.317#哨兵runid为c337f6f0dfa1d41357338591cd0181c07cb026d0 [8]01 7月01:38:13.135#+监视器主redis-holt-overflow 10.19.8.2 6380法定人数1 [8]01 7月01:38:13.135#+设置主redis-holt-ove

  • 问题内容: 我已经在计算机上安装了postfix,并且正在以编程方式(使用python)动态地更新virtual_alias(在某些操作上)。更新/ etc / postfix / virtual_alias中的条目后,我将运行以下命令: 但是我得到了错误: 我想以非人为方式运行上述sudo命令(这意味着我正在从python脚本运行此系统命令。)。那么如何使该命令以编程方式运行? 问题答案: 您可