软件资讯
IntelliJ IDEA 2023.1 最新变化
IntelliJ IDEA 新 UI 速览
PicList V1.6.1 发布 云存储 - 图床管理和图片上传工具 bug 修复
Calibre 6.15 发布,功能强大的开源电子书工具
Netty 4.1.91.Final 发布
Electron 24.0 正式发布
FerretDB 1.0 正式 GA,MongoDB 开源替代品
fastjson 2.0.28 发布
Apache Dubbo 3.2.0 发布,Dubbo 3 的全新版本
Jvmm是一个同时支持操作系统监控和Java虚拟机监控的工具
Rust 1.69.0 稳定版已发布
Glarity - Summary for Google/YouTube with ChatGPT
MrDoc 0.8.9 发布,类似语雀、飞书的开源在线文档和知识库系统
Layui 2.8.0 正式发布,朴实归来
Easy Retry 发布第一个 1.0.0
全网最美的Mysql客户端软件,使用教程
Motrix 时隔 2 年发布新版本,多功能开源跨平台下载工具
Quarkus 3.0 Final 发布,基于 Jakarta EE 10
一款开源免费的SSH/SFTP客户端Electerm
翻译工具 “沉浸式翻译” 已被收购
数据库管理工具
使用MYSQL作为MEMOS的数据库
RetroArch 1.17 发布,游戏模拟器
微软计划 3 月底发布首款 AI PC
Java Native-OpenJ9-HotSpot (solon) 与 Go (gin) 对比测试
🔥🔥🔥 EasyRetry 3.1.0 发布,Spring Boot3.x时代已经开启🎉🎉
SmartInput插件使用说明之Intellij产品、Windows系统
Linux Mint 22 “Wilma” 正式发布
Rust 1.80.0 发布
SqlBean 1.6.1 发布,Mybatis 自动建表、维护表结构
本文档使用 MrDoc 发布
-
+
Easy Retry 发布第一个 1.0.0
分布式系统大行其道的当前,系统数据的准确性和正确性是重大的挑战,基于 CAP 理论,采用柔性事务,保障系统可用性以及数据的最终一致性成为技术共识 为了保障分布式服务的可用性,服务容错性,服务数据一致性 以及服务间掉用的网络问题。依据 "墨菲定律",增加核心流程重试, 数据核对校验成为提高系统鲁棒性常用的技术方案 ## 特性 - **易用性** 业务接入成本小。避免依赖研发人员的技术水平,保障重试的稳定性 - **灵活性** 能够动态调整配置,启动 / 停止任务,以及终止运行中的重试数据 - **操作简单** 分钟上手,支持 WEB 页面对重试数据 CRUD 操作。 - **数据大盘** 实时管控系统重试数据 - **多样化退避策略** Cron、固定间隔、等级触发、随机时间触发 - **容器化部署** 服务端支持 docker 容器部署 - **高性能调度平台** 支持服务端节点动态扩容和缩容 - **多样化重试类型** 支持 ONLY\_LOCAL、ONLY\_REMOTE、LOCAL\_REMOTE 多种重试类型 - **重试数据管理** 可以做到重试数据不丢失、重试数据一键回放 - **支持多样化的告警方式** 邮箱、企业微信、钉钉、飞书 ## 客户端与服务端数据交互图  ## [#](https://www.oschina.net/action/GoToLink?url=http%3A%2F%2Feasyretry.byteblogs.com%2Fpages%2Fa2f161%2F%23%25E7%25B3%25BB%25E7%25BB%259F%25E6%259E%25B6%25E6%259E%2584%25E5%259B%25BE)系统架构图  ## 分布式系统重试的重要性 在分布式系统中,由于网络延迟、节点故障、消息丢失等原因,操作可能会失败。重试机制在分布式系统中显得尤为重要,以下是一些原因: - 网络不可靠性:在分布式系统中,由于网络的不可靠性,消息可能会丢失或延迟。重试机制可以确保消息被发送和接收,从而提高系统的可靠性和消息传递的可靠性。 - 事务处理:在分布式系统中,事务可能会因为网络延迟等原因失败。重试机制可以确保事务被正确提交,从而保证数据的最终一致性。 - 节点故障:分布式系统可能会由于节点故障而导致部分或全部服务不可用。重试机制可以确保节点重新启动后,服务能够自动恢复并继续运行。 - 提高系统可用性:重试机制可以确保在发生异常情况时,系统能够尝试自动恢复,避免出现系统宕机或无响应的情况,从而提高系统的可用性和稳定性。 重试机制在分布式系统中非常重要,可以提高系统的可靠性、性能和消息传递的可靠性,同时还可以确保数据的一致性和服务的可用性。 ## 重试的风险 - 重试放大风险:这种指数放大的效应很可怕,会加大直接整体系统的负载,最坏情况下被调用的服务流量可能放大到 r 倍,不仅不能请求成功,导致整体的负载继续升高,甚至直接打挂 - 无限重试问题:如果不设置重试次数会使得业务线程一直被重试占用,这样会导致服务的负载线程暴增直至服务宕机. - 数据安全:基于内存重试会可能造成数据丢失风险 - 网络阻塞:重试次数过多或重试间隔时间过短,就有可能导致大量的请求同时发送,从而导致网络拥塞和负载增加。 ## 业内成熟重试组件对比 | 区别 | SpringRetry | GuavaRetry | EasyRetry | | --- | --- | --- | --- | | 编程语言 | Java | Java | Java | | 退避策略 | 支持多种策略 | 支持多种策略 | 支持多种策略 | | 依赖生态 | Spring 框架 | 不依赖任何框架 | Spring 框架、GuavaRetry | | 重试类型 | 内存重试 | 内存重试 | 多种策略 内存重试 + 服务重试 | | 存储介质 | 内存 | 内存 | 内存 + 数据库 | | 是否管控重试流量 | 否 | 否 | 支持多维度管控 (单机重试管控、链路重试管控、重试流速管控等) | | 数据安全 | 会丢失重试数据 | 会丢失重试数据 | 基于 LOCAL\_REMOTE 或 ONLY\_REMOTE 持久化数据 | | 管理重试数据 | 不支持 | 不支持 | 支持暂停、停止、新增、修改重试数据 |
admin
2023年4月25日 18:18
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
PDF文档(打印)
分享
链接
类型
密码
更新密码