加入收藏 | 设为首页 | 会员中心 | 我要投稿 晋中站长网 (https://www.0354zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Unix > 正文

多次尝试学习,终于搞懂了微服务架构

发布时间:2019-11-29 18:52:25 所属栏目:Unix 来源:站长网
导读:副标题#e# 微服务的概念最早在 2012 年提出,在 Martin Fowler 的大力推广下,微服务在 2014 年后得到了大力发展。今天我们通过一组手绘图来梳理下微服务的核心架构。 图片来自 Pexels 什么是微服务? 微服务 Microservices 之父,马丁.福勒,对微服务大概的

多次尝试学习,终于搞懂了微服务架构

Apollo 的配置中心规模比较大,本地应用会有响应的配置中心客户端,可以定时同步配置中心里的配置。如果配置中心怠机,会使用缓存来进行配置。

通讯方式

关于通讯方式,一般市面也就是两种远程调用方式,我整理了一个表格:

多次尝试学习,终于搞懂了微服务架构

监控预警

监控预警对于微服务很重要,一个可靠的监控预警体系对微服务运行至关重要。

一般监控分为如下层次:

多次尝试学习,终于搞懂了微服务架构

从基础设施到用户端,层层有监控,全方位,多角度,每一个层面都很重要。

总体来说,微服务可分为 5 个监控点:

日志监控

Metrics 监控

健康检查

调用链检查

告警系统

①监控架构

下面的图是大部分公司的一种监控架构图。每一个服务都有一个 Agent,Agent 收集到关键信息,会传到一些 MQ 中,为了解耦。

同时将日志传入 ELK,将 Metrics 传入 InfluxDB 时间序列库。而像 Nagios,可以定期向 Agent 发起信息检查微服务。

多次尝试学习,终于搞懂了微服务架构

②调用链监控 APM

很多公司都有调用链监控,就譬如阿里有鹰眼监控,点评的 Cat,大部分调用链监控(没错,我指的 Zipkin)架构是这样的:

多次尝试学习,终于搞懂了微服务架构

当请求进入 Web 容器的时候,会经过创建 Tracer,连接 Spans(模拟潜在的分布式工作的延迟,该模块还包含在系统网络间传递跟踪上下文信息的工具包,如通过 HTTP Headers)。

Spans 有一个上下文,其中包含 Tracer 标识符,将其放在表示分布式操作的树的正确位置。

当我们把图中的各种 Span 放到后端的时候,我们的服务调用链会动态的生成调用链。

下面是一些市场上用的比较多的调用链监控对比:

多次尝试学习,终于搞懂了微服务架构

熔断、隔离、限流、降级

(编辑:晋中站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读