首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UpdateTaskList操作因Cadence匹配服务而失败

UpdateTaskList操作因Cadence匹配服务而失败
EN

Stack Overflow用户
提问于 2021-03-22 22:10:22
回答 1查看 81关注 0票数 0

前几天我们遇到了一些关于节奏设置的问题。我们的一个机器实例开始将CPU使用率提高到90%,并且所有入站工作流执行都停留在“预定”状态。在检查日志之后,我们注意到匹配的服务抛出了以下错误:

代码语言:javascript
复制
{
  "level": "error",
  "ts": "2021-03-20T14:41:55.130Z",
  "msg": "Operation failed with internal error.",
  "service": "cadence-matching",
  "error": "InternalServiceError{Message: UpdateTaskList operation failed. Error: gocql: no hosts available in the pool}",
  "metric-scope": 34,
  "logging-call-at": "persistenceMetricClients.go:872",
  "stacktrace": "github.com/uber/cadence/common/log/loggerimpl.(*loggerImpl).Error\n\t/cadence/common/log/loggerimpl/logger.go:134\ngithub.com/uber/cadence/common/persistence.(*taskPersistenceClient).updateErrorMetric\n\t/cadence/common/persistence/persistenceMetricClients.go:872\ngithub.com/uber/cadence/common/persistence.(*taskPersistenceClient).UpdateTaskList\n\t/cadence/common/persistence/persistenceMetricClients.go:855\ngithub.com/uber/cadence/service/matching.(*taskListDB).UpdateState\n\t/cadence/service/matching/db.go:103\ngithub.com/uber/cadence/service/matching.(*taskReader).persistAckLevel\n\t/cadence/service/matching/taskReader.go:277\ngithub.com/uber/cadence/service/matching.(*taskReader).getTasksPump\n\t/cadence/service/matching/taskReader.go:156"
}

重新启动工作流程后,一切都恢复正常,但我们仍在努力弄清楚发生了什么。在这个事件发生的那一刻,我们没有表现出任何沉重的工作负载,只是发生得很突然。我们的主要怀疑是,匹配服务可能在此事件期间失去了与cassandra数据库的连接,并且在我们重启它后,它能够恢复连接。但目前这只是一个假设。

这个问题的原因可能是什么?有没有办法防止这种情况在未来发生?也许是一些我们遗漏的动态配置?

PS: Cadence版本为0.18.3

EN

回答 1

Stack Overflow用户

发布于 2021-03-23 11:38:45

这是gocql中的known issue,原因有很多:

  1. Cassandra过载,某些节点没有响应。您可能认为您的负载很小,但最好的查看方式是通过Cadence指标/仪表板。
  2. 如果1.是问题所在,你可以调优ratelimiting来保护你的Cassandra。使用matching.persistenceGlobalMaxQPS将充当全局速率限制符,以覆盖matching.persistenceMaxQPS
  3. 网络问题或gocql中的一些错误。这真的令人沮丧。我们最近决定在这个PR中进行刷新。希望这将在下一个版本中得到缓解。

此外,如果匹配的节点正在运行,则可能会达到单个任务列表的限制。如果是,请考虑启用the scalable tasklist feature

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66747733

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档