精进云原生 - Dubbo 3.2 正式发布

我们非常高兴地宣布,Dubbo 3.2 已经正式发布了!这个版本带来了许多新功能和改进,这也是 Dubbo 在面对云原生化的当下的一次重要的尝试。

背景介绍

Apache Dubbo 是一款 RPC 服务开发框架,用于解决微服务架构下的服务治理与通信问题,官方提供了 Java、Golang 等多语言 SDK 实现。使用 Dubbo 开发的微服务原生具备相互之间的远程地址发现与通信能力, 利用 Dubbo 提供的丰富服务治理特性,可以实现诸如服务发现、负载均衡、流量调度等服务治理诉求。Dubbo 被设计为高度可扩展,用户可以方便的实现流量拦截、选址的各种定制逻辑。

01 Rest 协议支持

1.1 Why Rest?

随着移动互联网的普及,越来越多的应用程序需要与不同的系统进行集成。而这些系统可能使用不同的通信协议,这就需要应用程序能够灵活地适应各种协议。Rest 协议正是一种非常灵活的协议,它使用 HTTP 进行通信,可以与几乎任何系统进行集成。

在过去,RPC 框架通常使用二进制协议进行通信,这种协议非常高效,但不够灵活。相比之下,Rest 协议使用 HTTP 进行通信,更方便与其他系统集成,也更容易与现代化的Web和移动应用程序集成。

除了灵活性,Rest 协议还具有易读性和易用性。使用 Rest 协议,开发人员可以使用通用的 HTTP 工具(例如 cURL 或 Postman)测试和调试服务,而不需要特定的工具。此外,由于 Rest 协议使用标准的 HTTP 方法(例如 GET、POST、PUT 和 DELETE),因此开发人员可以更容易地理解和使用服务。

1.2 How To?

在之前的 Dubbo 版本中,也提供了 Rest 协议的支持,但存在以下问题:

  • 仅支持 JAX-RS 注解域,相较于采用度更高的 Spring Web 注解,复杂度更高
  • 需要依赖众多外部组件,如 Resteasy、tomcat、jetty 等,才能正常工作,极大地增加了使用成本。

因此,在 Dubbo 3.2 版本中,我们引入了 Spring Web 注解域的支持以及 Rest 协议的原生支持,无需依赖任何外部组件。

最直观的区别是,如果你升级到了 Dubbo 3.2,通过 Spring Web 发布的服务也可以直接通过 Dubbo 来发布。这一切只需要将 @Controller 注解改成 @DubboService 注解即可。

此外,对于原来使用 Spring Boot 或者 Spring Cloud 作为服务拆分的用户,也可以基于本功能平滑地迁移到 Dubbo 上来,以极低的成本获得 Dubbo 强大的能力。

1.3 What's next?

接下来 Dubbo 还将继续完善。除了现有的特性

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值