Dubbo的API包什么时候需要升级版本号?

[[416192]] 本文转载自微信公众号「Java时间屋」,作者Jack佳 。转载本文请联系Java时间屋公众号。

创新互联公司坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都做网站、成都网站建设、成都外贸网站建设、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的宿豫网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

  • 1.接口里面方法的参数发生变化:
  • 2.接口里面增加新的方法:
  • 3.服务增加新的接口:

前言

尽管现在SpringCloud现在盛行市场,但是使用的dubbo的公司也大量存在,之前我使用SpringCloud的时候也借鉴了dubbo的api的架构,直接@FeignClient("classServer")注入接口的实例,完成微服务之间的调用。架构如下:

就是借鉴了dubbo的api在controller层抽象出来一层接口。我算是同时使用过SpringCloud和Dubbo,二者确实都有优缺点,不是这篇文章讨论的重点,这篇文章主要讨论下我们使用dubbo的时候什么时候升级版本号。

1.接口里面方法的参数发生变化:

当方法里面的参数发生变化:比如旧的代码:

 
 
 
 
  1. f(int a)->(int a,int b) 

如果是这种的改造的话,消费者代码和服务者代码都的改变,服务需要重新部署,版本号升不升级已经作用不大。

2.接口里面增加新的方法:

举例:

 
 
 
 
  1. Public interface A{ 
  2.      
  3.    Integer  f a(int b); 
  4.  
  5.      
  6. 升级为: 
  7.  
  8. Public interface A{ 
  9.      
  10.   Integer  f a(int b); 
  11.      
  12.   String  f c (String d); 
  13.      

此时应该版本升级,1.0.0->1.0.1,此种版本升级是为了避免非本地环境的其他环境服务重启引用同一个包而没有实现新方法导致构建失败的情况发生。

3.服务增加新的接口:

举例子:

 
 
 
 
  1. Public interface A{ 
  2.      
  3.    Integer  f a(int b); 
  4.  
  5.      
  6. 增加: 
  7. Public interface A{ 
  8.      
  9.    Integer  f a(int b); 
  10.  
  11.      
  12. Public interface B{ 
  13.      
  14.    Integer  f c(int d); 
  15.  
  16.      

此种服务中增加新的接口文件,无论版本是否升级不会造成冲突无法构建的情况发生。

总结

虽然说版本升级是一件小事情,但是如果不注意的话还会产生很大的项目问题,导致服务无法启动的情况发生,如果你有不同的想法,欢迎关注我的公众号:Java时间屋 随时交流。

网站题目:Dubbo的API包什么时候需要升级版本号?
当前地址:http://www.shufengxianlan.com/qtweb/news33/233183.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联