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

如何获得挂起的项目minIdleTime大于一些价值?

徐阳炎
2023-03-14

使用Redis流,我们可以有一些消费者没有完成的未决项目。我可以找到这样的项目,使用的命令。让我们有两个悬而未决的项目:

1) 1) "1-0"
   2) "local-dev"
   3) (integer) 9599
   4) (integer) 1
2) 1) "2-0"
   2) "local-dev"
   3) (integer) 9599
   4) (integer) 1

问题是,通过使用x待定,我们可以仅基于id设置过滤器。我有一对夫妇的服务节点(AB),这使得僵尸检查:XPENDING mystreamtest_group-5 1他们每个人接收1-0项目,他们使并且其中只有一个(例如A)成为所有者并开始处理此项。但是B会再次运行x待定以获取新项,但是它会再次接收1-0,因为它还没有被处理(A正在工作),并且看起来我的所有队列都被阻塞了。

有什么解决方案可以避免它并同时处理未决项目吗?


共有1个答案

季炯
2023-03-14

您希望查看文档,尤其是从永久性故障中恢复。

通常使用的方式是:

  1. 您允许同一消费者在恢复后使用其来自PEL的消息
  2. 只有在经过相当长的时间后,您才能从另一个使用者XCLAIM,这表明原始使用者处于永久故障状态
  3. 您可以使用投递计数来检测毒药或死亡信件。如果一条消息被重试了很多次,那么最好将其报告给管理员进行分析

因此,通常您只需要从其他使用者处查看永久故障恢复逻辑的最古老的PEL,然后逐个消费。

 类似资料:
  • 问题内容: 我正在从Angular的文档中查看此示例,但是我认为这可能总体上适用于Promise。下面的示例是从文档中逐字复制的,并附有评论: 我不清楚这是如何工作的。如果我可以调用第一个的结果并将它们链接起来(据我所知),那么它就是一个类型为Promise的对象。这不是一个。那么,“它的值将是promiseA的结果增加1”的含义是什么? 我应该以这种方式访问吗?成功回调如何返回承诺并返回“结果+

  • 问题内容: 当我调试此代码时,在databaseUser中dataSnapshot在数据库中具有User的值,但是在object中,未添加,则全部为null。而且我不明白,因为在对象事件中正常接收值。 我的数据库用户,目前仅用于测试: 和方法,只是选择另一个活动的事件的关键: 问题答案: 当您对Firebase数据库执行查询时,可能会有多个结果。通过附加a,您可以在一个快照中获得这些结果,因此快照

  • 问题内容: 我想使用一个SQL,使接收者的接收数量> = 1024,转移数量<= 3。 约翰逊之所以被列出是因为列出了约翰逊帐户,因为它在以下三个转账中收到了1112美元:512美元+ 100美元+ 500美元,泰勒进行了1次转账1024美元。威廉姆斯不在,因为他在四笔交易中收到1200美元。 我尝试 它不能正常工作。我正在使用PostgreSQL,SQLLites语法也很好。 随附表和行的创建,

  • 问题内容: 我想让MongoDB动态为我要插入的文档的字段之一分配一个值。例如:MongoDB服务器的当前时间就像MySQL中的NOW()一样。 我尝试了这个: 我有这个辅助功能: LastSeen字段存储为脚本而不是评估: 我如何获得一些javascript评估而不是插入? 问题答案: 请参阅以下MongoDB文档上的URL: http://www.mongodb.org/display/DOC

  • 问题内容: 我有一个模板,仅当当前项目与上一个项目具有某些不同的字段时,才想在其中生成一些HTML。如何在ng-repeat中访问上一个项目? 问题答案: 你可以做类似的事情 JS 演示:小提琴 注意: 是针对指令数组的,它可能与作用域数组不同。使用内联变量访问正确的数组。 如果您筛选或订购,则为。

  • 问题内容: 我正在使用php中的分页进行搜索功能,下面是我的代码,但是每当我单击下一个链接时,搜索查询都不会采用通过POST传递的变量。你能帮我么.. 问题答案: 您的代码中有几个问题。 第一的: 您使用的变量不正确。您有,但您应该使用与变量相同的方式,如下所示: 第二: 您正在解释“发布”的概念,并错误地单击了链接。您需要使用下一个和上一个按钮进行的​​操作是一个隐藏的表单,其中包含您需要的所有