基础建设:分散式服务追踪

微服务系统之间的呼叫链结可能错纵复杂,除了系统日志(Logging)和监控指标(Metrics),链结追踪(Tracing)提供了服务间的关联索引和链结分析的功能。

  • 故障定位:描述服务请求的完整逻辑轨迹,定位服务故障的来源及路径,协助故障排除分析。
  • 资料分析:收集服务的性能、延迟和负载等监控指标,辅助用户资料及服务状态分析。
  • 依赖分析:服务间的依赖关系可视化。

Google Dapper 大规模分散式系统的跟踪系统

  • 系统日志收集:利用各种语言SDK将链结追踪数据导入讯息伫列。
    • 元资料(metadata):纪录TraceID、SpanID、用户代码与时间戳记
      • TraceID:於前端注入(Injection) RPC Header中,标记一次完整的服务请求链结,用以描绘呼叫拓朴(Topology)和运行序列。
      • SpanID:纪录跨程序(Process)的请求呼叫,一次完整的的服务请求链结(TraceID)可能由多个互相呼叫衔接的跨程序请求呼叫(SpanID)组成,视觉化构成树状的拓朴图形。
    • 详细资料:请求参数(Request)、回应结果(Response)与效能指标
  • 系统日志处理:索引服务及分散式储存
    • 元资料(metadata):Elasticsearch
    • 详细资料:HBase
  • 链结查询平台:利用索引服务查询TraceID,利用TraceID查询储存於分散式资料库中的详细资料。

分散式服务追踪


<<:  Day 14-for (i=0; i < 100; i++) createVM(i); infrastructure 也可以 for each 之一

>>:  DAY2: 何谓node.js?

Day 15 -版本控制与git flow

前十四天我们快速看过了Vue的语法以及一些基本概念,今天我们要跳一下来看何谓版本控制与git flo...

Day10你敢不敢给我登入

延续昨日 有了资料库之後再来就是想想如何登入! 登入的意思就是你输入的帐号密码都和资料库的帐号密码一...

DAY 24- 凭证实察 Certificate

「给你一个凭证,证明你是一个工具人。」 今天是一个户外教学。 我们要来去网站上实际把证书抓出来看看。...

Day 29 Polymorphism

多型是物件导向程序设计中第三个重要的概念,他建立在继承的概念上,多型是一种型别,可以解释为具有多个不...

系统建模语言 SysML

SysML 是一个图形的系统建模语言,他跟上一篇一样是来自喔卖尬集团 (Object Managem...