google-cloud-platform - 从 Task 检查 Google Cloud Task Queue 重试参数
问题描述
我创建了一个 Cloud Task,它的重试策略设置为最大尝试次数(例如 4 次)。
但是,如果任务最后一次失败,我们希望任务回退到默认解决方案。
也就是说,如果任务第一次失败,我们只需记录错误并返回500
。又是第二次。第三个。等等...但是如果当前TaskRetryCount
是该队列的最后一次尝试(即本例中的 4 次),那么我们将500
在最后一次返回之前执行一些回退行为。
我可以从Cloud Tasks HTTP 处理程序文档中看到我可以X-CloudTasks-TaskRetryCount
从请求的标头中获取。但它似乎没有办法获得max-attempts
队列。
那是我能掌握的吗?
还是我错误地接近这个?有没有更好的方法来做我想做的事情。
解决方案
假设任务是使用 Cloud Tasks 创建的,队列级重试设置适用于队列中使用 Cloud Tasks 创建的所有任务(因为它们不能在单个任务上设置)。从 REST API调用projects.locations.queues.get 方法应该会从包含您需要的字段的队列中返回RetryConfig设置。maxAttempts
对于使用 App Engine SDK 创建的任务,您应该参考此文档(尽管我认为该方法已被弃用并且对您的用例没有用处)。
推荐阅读
- database - Spring不会连接数据库并创建表
- html - 导航栏/ Bootstrap 中未出现徽标
- java - Getter 方法返回错误的值
- php - 生成和过期优惠券代码/促销代码
- python - 使用 jupyter notebook 运行 docker 镜像的问题
- javascript - javascript code raising warning in jshint.com "Functions declared within loops referencing an outer scoped variable may lead to confusing semantics"
- java - 如何创建由用户填充的对象数组并查看数组元素?
- javascript - D3 线没有绘制,但轴和图例被渲染,尽管日期格式,仍然得到 path is not a num error
- c# - 无法使用 OLEDB 打开 CSV 文件
- python - 寻找一种使用 Python Kivy 绘制部分图像的方法