当前位置:主页 > 查看内容

开发者学堂课程干货总结——Dubbo 分布式服务治理实践(二)

发布时间:2021-06-21 00:00| 位朋友查看

简介:哈喽各位同学们大家好呀 小编今天带着开发者学院中课程“Dubbo分布式加与大规模服务集群治理”干货总结来了~一起学习新课程吧 课程链接以及图谱地址小编已经为大家指路了 搭配学习效果更佳 课程名称 Dubbo 分布式服务治理实践 课程地址 https://developer.al……

哈喽各位同学们大家好呀 小编今天带着开发者学院中课程“Dubbo分布式加与大规模服务集群治理”干货总结来了~一起学习新课程吧

课程链接以及图谱地址小编已经为大家指路了 搭配学习效果更佳

课程名称 Dubbo 分布式服务治理实践

课程地址 https://developer.aliyun.com/learning/course/72/detail/1186?spm a2c6h.21258778.0.0.6abe6a00HnUwTh

图谱名称 Alibaba Java 技术图谱

图谱地址 https://developer.aliyun.com/graph/java?spm a2c6h.21110250.J_5703890090.6.700e3c67EjOBeJ

Dubbo分布式加与大规模服务集群治理?


一、Dubbo分布式架构?

image.png?

Dubbo架构主要分为两个部分 客户端与服务端 也可称为Dubbo消费者和Dubbo提供者。?

例如电商网站 要调支付服务、物流服务、订单服务、监控服务、大数据服务等 服务是某些功能的封装 这些是提供者所提供的服务。作为客户端的话 用户要调用这些服务去完成某些业务功能 因为客户端和服务端是位于不同进程 位于分布式网络中不同的节点上 这是典型的一个架构。如果客户端和服务端两个都是单体的话 则为最简单的分布式架构。?

随着业务的不断发展 架构也会不断演化。有些业务是大规模的集群 此时单点调用无法解决问题 这是由于服务端可能有10台、100台、1000台甚至更多。同样的服务有时候上线有时候下线 无法预估有多少台可能会上线 多少台会下线 此时需要使用集群的弹性收缩功能解决这个问题。?

如果集群从上线到下线到运行一直都是10台 则正常情况就能满足需求。但如果在某些大型业务场景 例如双11时 平时10台可以满足的业务 在双11的时候可能需要1000台 甚至上万台进行支撑。因此 不同的业务集群规模是不一样的 小规模集群可能直接基于IP进行集群搭建就可以 大规模集群则需要对接多个不同的局域网 基于域名的方式进行调度的情况可能更多一点。?

因此 Dubbo分布式架构不仅仅是客户端和服务端、消费者和提供者这样的调用关系 它解决的是大规模客户端与大规模服务端的管理问题。?

简单的架构要解决技术问题的话 它还需要有一个注册中心 还有应用监控中心 这就是典型的Dubbo早期解决问题。?

?

?

二、Dubbo分布式集群架构?

在这个基础上 如果服务是不定数量的大规模集群 就需架构进一步去升级改造。?

image.png?

注册中心可能是个集群 监控中心可能是个集群 在大型业务场景下 服务可能也是个集群。?

无论是支付服务、订单服务、商品服务、账号服务等 都可以根据自己的实际的并发需求 去部署不定规格、不定数量的大规模服务集群。Dubbo联合其他技术人员给用户提供快速上线、包括管理的服务。Dubbo不仅解决分布式调用的问题 还解决了多协议大规模集群的治理问题 这也是Dubbo在其他大型互联网公司中收到广泛好评的原因。?

?

?

三、Dubbo核心组件?

Dubbo主要有以下核心组件 ?
Provider 服务的提供方 通过Jar或者容器的方式启动服务?
Consumer 服务消费方?
Registry 注册中心?
Monitor 统计服务和调用次数 调用时间监控中心。 Dubbo的控制台页面中可以显示 目前只有一个简单版本 ?
Container 服务运行的容器?

?

?

四、Dubbo SOA服务治理?

image.png?

Dubbo诞生于SOA盛行的2008年 早期基于Web?Service中心SOA服务治理 后面在这个基础上逐渐开始大规模的扩充 服务之间关系越来越复杂。此时需要治理中心 用来做大规模的流量调度、监控等 这些都是极具挑战性的问题 因此阿里开发了很多工具在内部去解决这些问题。?

对于这些挑战性问题 Dubbo的许多观点思想与目前微服务架构Spring Cloud不谋而合。这是由于当微服务到了大规模集群的层次上 无论怎么拆 它终究会面临这些问题 例如熔断限流 负载均衡 流量调度 安全治理等。?

2013 2017年Dubbo疏于维护 而这是Spring?Cloud蓬勃发展时期 逐渐成为世界级微服务框架 但从某种程度上来说 Dubbo可以称为Spring Cloud的前辈。?

?

?

五、Dubbo未来底层同步与异步架构?

image.png?

Dubbo从3.0版本开始 也在做服务高并发、协议等方面的改造。如云原生支持的改造 去支持底层的高并发高吞吐量 去对接K8s云原生的工具 协议层支持RPC等新的类型 从而让Dubbo整个通信协议更多样化 使用户在不同场景下可以选择不同的实践方式。?

异步请求和同步请求各有优势 异步请求优势在于非阻塞 同步请求的优势在于即时性 但如果是阻塞操作、长时间操作的话 可能会导致线程卡死的状况 影响整体的并发。?

Dubbo整个分布架构是更高层级的架构 它是大规模服务集群 不仅仅是开发落地 而且要大规模服务治理 它的实践经验给其他互联网公司的架构提供了很好的参考。?

?

?

六、Dubbo分布式架构与Remoting?

image.png?

Dubbo分布式架构的远程通讯 Remoting 提供对多种NIO框架抽象封装 包括“同步转异步”和“请求-响应”模式的信息交换方式。?


本文转自网络,原文链接:https://developer.aliyun.com/article/784814
本站部分内容转载于网络,版权归原作者所有,转载之目的在于传播更多优秀技术内容,如有侵权请联系QQ/微信:153890879删除,谢谢!

推荐图文

  • 周排行
  • 月排行
  • 总排行

随机推荐