|
|
51CTO旗下网站
|
|
移动端

1.3 常见的微服务组件

《微服务架构实战》第1章微服务概述,本章对微服务的架构设计理念进行了总结和概括。从一个单体应用到整个微服务的拆分过程都进行了分析。微服务从大的角度来说是一种设计思想,当应用大到一定的程度时,就不得不进行拆分,而微服务此时就是一种拆分方案。本节为大家介绍常见的微服务组件。

作者:张锋来源:电子工业出版社|2018-11-26 12:04

1.3 常见的微服务组件

既然谈到了微服务架构,下面介绍通用的微服务都包括哪些组件。

服务注册

服务注册是一个记录当前可用的微服务实例的网络信息数据库,是服务发现机制的主要核心,服务注册表包含查询API、管理API,使用查询API获得可用服务的实例,使用管理API实现注册、注销。

服务发现

服务调用方从服务注册中心找到自己需要调用的服务的地址。可以选择客户端服务发现,也可以选择服务端服务发现。

负载均衡

服务提供方一般以多实例的形式提供服务,负载均衡功能能够让服务调用方连接到合适的服务节点,并且节点选择的工作对服务调用方来说是透明的。可以选择服务端的负载均衡,也可以选择客户端的负载均衡。

服务网关

服务网关是服务调用的唯一入口,可以在这个组件是实现用户鉴权、动态路由、灰度发布、A/B测试、负载限流等功能。根据公司流量规模的大小网关可以是一个,也可以是多个。

配置中心

将本地化的配置信息(Properties、XML、YAML等)注册到配置中心,实现程序包在开发、测试、生产环境的无差别性,方便程序包的迁移。配置部分可以单独使用高可用的分布式配置中心,确保一个配置服务出现问题时,其他服务也能够提供配置服务。

API管理

以方便的形式编写及更新API文档,并以方便的形式供调用者查看和测试。通常需要加入版本控制的概念,以确保服务的不同版本在升级过程中都能够提供服务。

集成框架

微服务组件都以职责单一的程序包对外提供服务,集成框架以配置的形式将所有微服务组件集成到统一的界面框架下,让用户能够在统一的界面中使用系统。

分布式事务

对于重要的业务,需要通过分布式事务技术(TCC、高可用消息服务、***努力通知)保证数据的一致性。根据业务的不同,适当地牺牲一些数据的一致性要求,确保数据的最终一致性。

调用链

记录完成一个业务逻辑时调用到的微服务,并将这种串行或并行的调用关系展示出来。在系统出错时,可以方便地找到出错点。同时统计各个服务的调用次数,确保比较热的服务能够被分配更多的资源。

支撑平台

系统微服务化后,系统变得更加碎片化,系统的部署、运维、监控等都比单体架构更加复杂,那么就需要将大部分的工作自动化。现在,可以通过Docker等工具来中和这些微服务架构带来的弊端。例如,持续集成、蓝绿发布、健康检查、性能健康等。可以这么说,如果没有合适的支撑平台或工具,就不要使用微服务架构。

喜欢的朋友可以添加我们的微信账号:

51CTO读书频道二维码


51CTO读书会第9群:808517103

【责任编辑:book TEL:(010)68476606】

回书目   上一节   下一节
点赞 0
分享:
大家都在看
猜你喜欢

订阅专栏+更多

16招轻松掌握PPT技巧

16招轻松掌握PPT技巧

GET职场加薪技能
共16章 | 晒书包

289人订阅学习

20个局域网建设改造案例

20个局域网建设改造案例

网络搭建技巧
共20章 | 捷哥CCIE

645人订阅学习

WOT2019全球人工智能技术峰会

WOT2019全球人工智能技术峰会

通用技术、应用领域、企业赋能三大章节,13大技术专场,60+国内外一线人工智能精英大咖站台,分享人工智能的平台工具、算法模型、语音视觉等技术主题,助力人工智能落地。
共50章 | WOT峰会

0人订阅学习

读 书 +更多

ASP网络编程从入门到精通

本书是为那些对Web开发感兴趣的读者而编写的。ASP(Active Server Pages)是微软公司在Web领域的又一次突破,它打破了以往只能由专业人员来...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO播客