SOA服务化演变

12 篇文章 0 订阅
4 篇文章 0 订阅

整理下服务化演变过程中的几个关键节点。

  • 服务路由
  • 负载均衡

分布式应用构架体系对于业务逻辑复用需求强烈,上层业务均想借用已有的底层服务,来快速搭建更多、更丰富的应用,降低新业务开展的人力和时间成本,快速响应瞬息万变的市场需求。公共业务被拆分出来,形成可用的共用服务,最大程度的保障了代码和逻辑的复用,避免重复建设,这种设计也称为SOA(Service-Oriented Architecture)。

服务路由

SOA构架中,服务消费者通过服务名称,在众多服务中找到目标服务地址列表成为服务路由。如下图所示,为服务路由示意图。
在这里插入图片描述

服务路由核心即一个服务名和服务地址列表的映射关系。从早起的配置文件发展到现在的分布式配置中心。

负载均衡

对于负载较高的服务,往往都是集群发布,在请求到来时,需要将请求均衡的分配到后端服务器,负载均衡程序将会从服务地址列表中,按照负载均衡算法,选择一台机器进行访问。
在这里插入图片描述

服务演变

服务规模较小时,可以采用硬编码的方式,将服务地址和配置写在代码里,通过编码解决路由和负载均衡问题。服务规模较小时,采用配置的方式进行SOA构架还是可以的,毕竟服务数量可控,维护成本能够接受。
在这里插入图片描述

但是当服务规模在扩大时,服务变得越来越多,构架形式即发生了改变。这个时候其实会有一个突出问题-单点故障:服务路由down了,所有的服务就都无法访问了;负载均衡服务down了,服务也无法访问。因此这种构架对单点稳定性要求较高,同时管理这些不断增加的服务配置也愈发困难。
在这里插入图片描述

服务数量激增,需要一个动态注册和获取服务信息的地方,统一管理服务名称和对应的地址列表,即引入服务配置中心。基于ZooKeeper的路由和负载均衡构架如下:
在这里插入图片描述

小结

本文仅在概念上理解一下SOA服务构架的演变过程及关键的节点,具体部署如ZooKeeper、服务路由及负载均衡实现将在后面的文章中介绍。

备注

文中的图片是通过OmniGraffle软件绘制,如果需要文中原图的话,留言即可。

OmniGraffle是Mac平台上的一款绘图工具,请移步Mac流程图工具OmniGraffle介绍-https://blog.csdn.net/loongshawn/article/details/52282547了解,早些时候可以以优惠价购买授权,目前渠道已经被封了,因此不想花钱的话,只能使用破解版本。

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值