当前位置: 首页 > 后端技术 > Java

主打稳定性,Dubbo发布计划公布

时间:2023-04-01 22:49:44 Java

Dubbo介绍ApacheDubbo是一个RPC服务开发框架,用于解决微服务架构下的服务治理和通信问题。官方提供Java、Golang等多语言SDK实现。使用Dubbo开发的微服务本身就具备远程地址发现和相互通信的能力。利用Dubbo提供的丰富的服务治理特性,可以实现服务发现、负载均衡、流量调度等服务治理需求。Dubbo被设计成高度可扩展的,用户可以很容易地实现各种自定义的流量拦截和位置选择逻辑。我应该如何选择版本?对于这个问题,Dubbo一直没能很好的回答。原因是要确保所有版本的稳定性非常具有挑战性。比如在Dubbo2.7的部分版本中,出现了一些不兼容的问题,给部分用户升级带来了困扰。为此,很多用户从保证稳定性的角度出发,选择了较为保守的策略,即生产环境采用采用率最高的版本,之后不再更新,避免在升级过程中出现意外。但这种方法无疑是有问题的。一方面,会导致永远无法使用社区的新功能,无法获得技术进化的红利;另一方面,对于导致不稳定的安全漏洞、Bug等已??知问题,如果一直存在不升级的情况,久而久之会给应用带来巨大的风险,并可能引发严重的安全生产事故。因此,为了更好地回答这个问题,Dubbo制定了未来的版本迭代计划,明确了版本稳定性维护机制,提高了开发者使用Dubbo的信心。目前状态此前,Dubbo共维护了2.6.x、2.7.x、3.x三个大版本,其中2.7.x是捐赠给Apache基金会后的版本。2.6.x已于去年宣布生命周期结束(EOL),而2.7.x已经维护了四年。四年来,2.7.x版本经历了数次重大改版,如2.7.3版本修改Nacos的注册方式,2.7.6版本增加应用级服务发现,增加2.7.9版本中的应用程序级服务发现。应用层服务发现等重大重构3.这些修改给2.7.x版本的稳定性带来了巨大的风险,导致2.7.x的多个版本或多或少存在不同的问题,用户无法选择最稳定的使用的版本。因此,我们希望在3.x版本中,通过发布机制来遏制这种不稳定的情况,提高Dubbo版本的稳定性。未来总体规划接下来,Dubbo将以每6个月为一个周期,包括每个版本的新功能集成、稳定性维护和安全漏洞修复三大方向。新功能集成是指所有的新功能、性能优化、破坏性修改都会被集成到Dubbo开发过程中的行为。由于新功能需要经过一段时间的迭代稳定,新功能的集成会给对应的版本带来不稳定,所以只能在每个版本最开始的时候进行。稳定性维护是指修复现有功能的异常行为,以进一步提高版本的稳定性。特别是对于一些重大问题的修复,比如需要整体重构的功能,或者带来破坏性影响的提交,将被视为新功能提交,并执行合并新功能的流程。避免解决一个问题并制造更多问题的严重后果。安全维护是指对使用中的安全隐患进行修复。这部分主要解决白帽子提交的漏洞。每个版本的新功能整合持续6个月,每个版本的稳定性维护持续12个月,每个版本的安全维护持续18个月。因此,从整体迭代规划来看,Dubbo每6个月会开始一个新的版本迭代,同时会有一个版本宣布生命周期结束(EOL)。逐版本维护规划上图展示了每个时间点具体到每个版本的维护状态。Dubbo2.7和3.0版本已进入安全维护阶段,将于2023年3月宣布版本维护周期结束。Dubbo3.1版本目前处于稳定性维护阶段。上一节说到,只有集成和稳定性修改的修改会继续。维稳阶段的版本也是社区推荐生产使用的最新版本。稳定性维护工作将持续到2023年3月,之后会有一个持续6个月的安全维护阶段,最终在2023年9月结束其版本生命周期。对于Dubbo3.2版本,目前还处于纳入新版本阶段功能,并发布测试版。该阶段适合部分尝鲜者,版本稳定性略低于进入仅稳定维护阶段的版本。2023年3月,Dubbo3.2将结束新特性集成周期,进行充分的稳定性验证,正式发布可用于生产的GA版本。之后,稳定性维护将持续到2023年9月,版本生命周期将在2024年3月结束。对于Dubbo3.3版本,随着Dubbo新功能集成阶段的结束,将于2023年3月正式开始开发。版本3.2。因此,Dubbo3.3的第一个Beta版本也将在2023年3月发布。同样,经过6个月的新功能集成阶段,Dubbo3.3版本将于2023年9月正式发布,成为可生产的GA版本,并将进入同时维稳阶段。然后在2024年3月进入安全维护阶段,2024年9月结束版本生命周期。总结对于绝大多数生产用户,我们建议使用目前处于纯稳定维护阶段的版本的最新次要版本。比如在2022年9月到2023年3月期间,Dubbo3.1只是处于稳定性维护阶段,所以优先选择Dubbo3.1版本。对于Dubbo3.1.x的多个小版本如3.1.0、3.1.1、3.1.2等,建议直接使用最新的小版本。由于次要版本之间仅包含稳定性修复,因此以后的版本更稳定。对于愿意尝鲜和体验新功能的用户,可以直接基于最新的开发版本进行测试。即使是开发版,Dubbo也有一套完整的质量保证机制。如果您在使用过程中遇到问题,欢迎您向社区提交反馈。目前阿里巴巴集团已经基于Dubbo3.0稳定版完美支持了今年双十一整个核心电商的所有调用,现正在升级到最新的Dubbo3.1稳定版。欢迎更多用户一起升级到Dubbo3.1版本。升级过程中,可以参考官网给出的升级指南。遇到问题可以通过issue、微信群、钉钉群及时反馈给社区。我们会尽力协助。更多的是在版本规划的方向上,除了此次发布的迭代路线图,Dubbo还将通过一系列的机制来保证用户体验的持续和稳定。在大版本升级方面,Dubbo会构建完整的版本升级指南,比如从Dubbo3.1升级到Dubbo3.2的主要修改点,让用户清楚了解升级时的风险,更好地规划升级节奏。另外,针对目前被广泛使用的Dubbo2.7版本,Dubbo社区也将在近期推出Dubbo2.7版本升级指南和工具,方便所有Dubbo2.7用户查看所有版本差异,顺利升级到Dubbo3。搜索并关注官方微信公众号:ApacheDubbo,了解更多行业最新动态,掌握各大厂面试必备的Dubbo技能