微服务架构概览图
概述
微服务架构概览图,从微服务架构分层角度和治理角度来描述。从分层角度来看,微服务架构分为 5 层,分别为:接入层、网关层、聚合层、服务层(业务服务)、存储层、云设施层,通过分层定义其职责,明确层次边界,形成较为通用的微服务架构模型。从治理角度来看,微服务架构治理分为服务治理和制度治理,为微服务落地保驾护航,为企业实现降本增效。
架构分层
接入层
接入层为系统入口,主要负责客户端请求的路由和转发,网络完全策略的处理,比如:防 DDoS 攻击等,必须提供负载均衡能力。
网关层
网关层是客户端请求与后端服务的连接器,与业务强相关,完全跟着产品走,甚至可以为每一个不同的产品单独定义一个网关,比如 App 端的网关,网站后台管理系统的网关等等。跟随者产品存在而存在,产品消亡而消亡。
聚合层
聚合层是网关与业务服务的连接器,可以理解为业务领域,一个业务领域聚合在一起成为一个聚合服务,提供的是业务能力。比如:下订单功能,由订单聚合服务提供,然后该层组合调用服务层来实现真正的下单逻辑,比如涉及到订单服务、库存服务、优惠券服务等等。
服务层
业务领域的核心层,所有的业务逻辑都在这一层实现。每个业务提供的是自己的业务能力,比如库存服务,只管商品的库存。
存储层
数据存储层,根据业务不同,选择的存储方式不同。不局限于某一种关系型数据库。
云设施层
可以是企业内部的私有云,也可以是公有云,都提供了容器化部署能力、容器编排能力、容器缩扩容能力。
架构治理
服务治理
服务治理是从管事的角度去治理,主要包含:服务注册、服务发现、服务路由、服务监测、配置管理、限频限流、熔断降级、访问控制、日志跟踪等。
服务治理,是微服务架构的灵魂,没有了服务治理的微服务架构,不会给企业带来降本增效的效果,反而会带来各种复杂问题,从而让企业领导对技术团队和微服务架构产生了偏见。
通过服务治理,把微服务间调用关系、节点故障、服务可用性等等直接可视化,让微服务不再成为黑盒,也能为服务的自动扩容、缩容提供数据支撑。
制度治理
制度治理是从管人的角度去治理,主要包含:研发流程规范、上线流程规范、故障处理流程规范、架构设计规范、接口设计规范、数据库设计规范、编码规范、测试用例规范、部署规范等,通过定义一系列符合公司的规范和制度,用同一套沟通语言和标准,大家沟通时能快速同频,极大提高沟通和协作效率,同时还能避免各种因为疏忽(比如:某个脚本没执行,某个队列忘记配置了)导致的线上大问题。
版权声明: 本文为 InfoQ 作者【wiflish】的原创文章。
原文链接:【http://xie.infoq.cn/article/cbbe883f72d1054cdd73a7c7e】。文章转载请联系作者。
评论