您的位置:首页 > 编程语言 > Java开发

Dubbo,Dubbox和SpringCloud区别

2018-08-02 21:06 357 查看

Dubbo、Dubbox、springCloud的优缺点

Dubbo

  • 1.dubbo是一个分布式的服务框架,致力于提高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。一般只有分布式的时候,才需要dubbo这样的分布式框架。通俗的讲,Dubbo就是服务调用的东西。
  • 2.dubbo可以和spring无缝集成

Dubbox

  • 1.Dubbox 是一个分布式服务框架,其前身是阿里巴巴开源项目Dubbo.
  • 2.特征

1、连通性: 

  • 注册中心负责服务地址的注册与查找,相当于目录服务,服务提供者和消费者只在启动时与注册中心交互,注册中心不转发请求,压力较小
  • 监控中心负责统计各服务调用次数,调用时间等,统计先在内存汇总后每分钟一次发送到监控中心服务器,并以报表展示 
  • 服务提供者向注册中心注册其提供的服务,并汇报调用时间到监控中心,此时间不包含网络开销
  • 服务消费者向注册中心获取服务提供者地址列表,并根据负载算法直接调用提供者,同时汇报调用时间到监控中心,此时间包含网络开销 
  • 注册中心,服务提供者,服务消费者三者之间均为长连接,监控中心除外 
  • 注册中心通过长连接感知服务提供者的存在,服务提供者宕机,注册中心将立即推送事件通知消费者
  • 注册中心和监控中心全部宕机,不影响已运行的提供者和消费者,消费者在本地缓存了提供者列表 
  • 注册中心和监控中心都是可选的,服务消费者可以直连服务提供者

 

2、健状性:

  • 监控中心宕掉不影响使用,只是丢失部分采样数据
  • 数据库宕掉后,注册中心仍能通过缓存提供服务列表查询,但不能注册新服务 
  • 注册中心对等集群,任意一台宕掉后,将自动切换到另一台
  • 注册中心全部宕掉后,服务提供者和服务消费者仍能通过本地缓存通讯
  • 服务提供者无状态,任意一台宕掉后,不影响使用 
  • 服务提供者全部宕掉后,服务消费者应用将无法使用,并无限次重连等待服务提供者恢复

 

3、伸缩性: 

  • 注册中心为对等集群,可动态增加机器部署实例,所有客户端将自动发现新的注册中心
  • 服务提供者无状态,可动态增加机器部署实例,注册中心将推送新的服务提供者信息给消费者 

 

4、升级性: 

  • 当服务集群规模进一步扩大,带动IT治理结构进一步升级,需要实现动态部署,进行流动计算,现有分布式服务架构不会带来阻力

springcloud

  • Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。

微服务架构的优点

1、易于开发和维护

2、单个微服务启动较快

3、技术栈不受限

4、按需伸缩

 

微服务架构面临的挑战

1、运维要求较高

2、分布式固有的复杂性

3、接口调整成本高(修改某一微服务的API,所有引用都要调整)

4、重复劳动(某一个功能未达到微服务的程度,各个服务会开发此功能。方案是公共组件,但多语言环境不一定适用)

总结

Dubbo实现了服务治理的基础,但是要完成一个完备的微服务架构,还需要在各环节去扩展和完善以保证集群的健康,以减轻开发、测试以及运维各个环节上增加出来的压力,这样才能让各环节人员真正的专注于业务逻辑。而Spring Cloud依然发扬了Spring Source整合一切的作风,以标准化的姿态将一些微服务架构的成熟产品与框架揉为一体,并继承了Spring Boot简单配置、快速开发、轻松部署的特点,让原本复杂的架构工作变得相对容易上手一些

 

 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: