本篇内容介绍了“Dubbo框架的运行流程是怎样的”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
Dubbo简介
介绍
Dubbo是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和Spring框架无缝集成。
Dubbo是一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力:
-
面向接口的远程方法调用:封装了长连接的NIO框架,例如:Netty、Mina等等;
-
智能容错和负载均衡;
-
服务自动注册和发现;集成Apache的Zookeeper组件,用于用户的注册与发现;
Dubbo框架的运行流程如下:
-
服务提供者注册进入服务注册中心;
-
服务消费者订阅服务;
-
服务消费者发现服务;
-
服务消费者通过远程调度来找到服务提供者进行服务的消费;
-
服务消费者和服务提供者定时发送心跳数据到服务监控中心用于记录调用次数和时间;
Dubbo的优点:
-
连通性:服务注册中心、服务提供者、服务消费者、服务监控中心都是长连接;
-
健壮性:监控中心宕机不会影响其他的服务的正常进行,服务器集群配置的话,任意一个服务的宕机都不会影响整体的服务的运行状况;
-
伸缩性:可以动态增减注册中心与服务的实例数量;
-
升级性:服务器集群升级,不会对现有架构造成压力;
Spring Cloud 与 Dubbo
服务关注点 | Spring Cloud | Dubbo |
---|---|---|
配置管理 | config | 无 |
服务发现 | Eureka、Consul、Zookeeper | Zookeeper |
负载均衡 | Ribbon | 自带 |
网关 | Zuul | 无 |
分布式追踪 | Spring Cloud Sleuth | 无 |
容错 | Hystrix | 不完善 |
通信方式 | HTTP、Message | RPC、NIO |
安全模块 | Spring Cloud Security | 无 |
其他方面:
-
更新频率
Spring Cloud保持着十分高频率的更新,并且社区活跃度也很高,这对于一个架构来说是一件十分利好的事情,至少Spring Cloud是在飞速发展的;
而Dubbo自从2013年3月开始暂停了更新,接下来的五年时间里都没有进行技术上的更新迭代,直到2017年9月才重新更新; -
开发风格
Spring Cloud更趋向使用注解+JavaBean的配置方式的敏捷开发;
Dubbo则趋向于使用Spring XML的配置方式; -
通信方式
Spring Cloud大多数使用的是基于HTTP Restful的风格,服务与服务之间完全无关、解耦合;
Dubbo则是基于RPC的远程调用方式,对于平台、接口、语言有强依赖;跨平台调用服务比较困难,需要额外写中间件;
“Dubbo框架的运行流程是怎样的”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!
原创文章,作者:carmelaweatherly,如若转载,请注明出处:https://blog.ytso.com/223704.html