stamina 生产级的python 重试包

stamina 是基于tenacity的包装

包含的特性

  • 仅对某些异常(甚至是其中的子集)进行重试,方法是先使用谓词进行自检
  • 重试之间带有抖动的指数退避
  • 限制重试次数和总时间
  • 自动异步支持-包括Trio
  • 保留所装饰的可调用函数的类型提示
  • 开箱即用,可灵活使用Prometheus、structlog和标准库的支持logging
  • 专门的测试支持允许全局停用重试,或限制重试次数并删除退避

说明

tenacity 是一个不错的选择同时也很强大,但是使用不好也是会有影响的,stamina 提供了对于重试的一些最佳实践,很值得使用,同时官方文档也比较全,值得学习下

参考资料

https://github.com/hynek/stamina
https://stamina.hynek.me/en/stable/
https://tenacity.readthedocs.io/en/latest/
https://stamina.hynek.me/en/stable/motivation.html

posted on   荣锋亮  阅读(13)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2023-10-27 photon rust 图像处理库
2023-10-27 dremio 创建数据集命令
2022-10-27 dremio map 数据查询
2022-10-27 apache iceberg 1.0 发布
2020-10-27 imgproxy 强大高效的图片处理服务
2020-10-27 java 使用js 引擎处理业务逻辑
2020-10-27 nodejs java 互调用

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示