模式下的探索与改进-Proxyless-在-Mesh-Dubbo (模式下的探索是什么)

文章编号:11059 更新时间:2024-03-07 分类:互联网资讯 阅读次数:

资讯内容

随着Docker和Kubernetes的出现,一个庞大的单体应用可以被拆分成多个独立部署的微服务,并被打包运行于对应的容器中。不同应用之间相互通信,以共同完成某一功能模块。微服务架构与容器化部署带来的好处是显而易见的,它降低了服务间的耦合性,利于开发和维护,能更有效地利用计算资源。当然,微服务架构也存在相应的缺点:为解决这些痛点,ServiceMesh诞生了。以经典的sidecar模式为例,它通过在业务Pod中注入Sidecar容器,对代理流量实施治理和管控,将框架的治理能力下层到sidecar容器中,与业务系统解耦,从而轻松实现多语言、多协议的统一流量管控、监控等需求。通过剥离SDK能力并拆解为独立进程,从而解决了强依赖于SDK的问题,从而使开发人员可以更加专注于业务本身,实现了基础框架能力的下沉。

模式下的探索与改进Proxyless在

经典的SidecarMesh部署架构有很多优势,如减少SDK耦合、业务侵入小等,但增加了一层代理,也带来了一些额外的问题。为解决这些痛点,ProxylessServiceMesh模式诞生了。传统服务网格通过代理的方式拦截所有的业务网络流量,代理需要感知到控制平面下发的配置资源,从而按照要求控制网络流量的走向。以Istio为例,Proxyless模式是指应用直接与负责控制平面的istiod进程通信,istiod进程通过监听并获取K8s的资源,例如Service、Endpoint等,并将这些资源统一通过xds协议下发到不同的rpc框架,由rpc框架进行请求转发,从而实现服务发现和服务治理等能力。

Dubbo社区是国内最早开始对ProxylessServiceMesh模式进行探索的社区,这是由于相比于ServiceMesh,Proxyless模式落地成本较低,对于中小企业来说是一个较好的选择。Dubbo在3.1版本中通过对xds协议进行解析,新增了对Proxyless的支持。Xds是一类发现服务的总称,应用通过xdsapi可以动态获取Listener(监听器)、Route(路由)、Cluster(集群)、Endpoint(集群成员)以及Secret(证书)配置。通过Proxyless模式,Dubbo与ControlPlane直接建立通信,进而实现控制面对流量管控、服务治理、可观测性、安全等的统一管控,从而规避Sidecar模式带来的性能损耗与部署架构复杂性。

标签: dubbo对象模型分布式服务器深度探索书籍C

本文地址: https://yihaiquanyi.com/article/10a3f21a404a61be1e15.html

上一篇:应并尽并优先拨补贴三部委六大政策力挺户用...
下一篇:郑文灿不当台湾海基会董事长适合人选但却没...

发表评论