操作场景
服务依赖拓扑包含了查询服务之间相互依赖调用的拓扑关系,查询特定集群特定命名空间下服务之间调用的统计结果等功能。您可以通过拓扑图的形式直观的了解应用的上下游组件与它们的调用关系和相关性能数据,从而更快速地找出应用的瓶颈。
本文介绍服务依赖拓扑功能的使用方法。
说明
支持跨命名空间查看服务依赖拓扑,不仅全局命名空间。
不支持 IE 浏览器。
操作步骤
创建视图
您可以通过固定视图,固定常用访问的命名空间。当视图中包含多个命名空间,可实现跨命名空间查看调用链。
说明
单个租户下最多可创建100个视图。
1. 登录 TSF 控制台。
2. 在左侧导航栏选择运维中心 > 依赖分析 > 服务依赖拓扑,进入服务依赖拓扑界面。
3. 选择好地域后,在左侧视图栏单击➕,勾选视图包含的命名空间,填写好试视图名称。
视图类型:支持仅包含一个命名空间和跨多个命名空间查看,选择跨多个命名空间查看时可以同时最多勾选5个命名空间。
视图名称:60个字符内。
4. 单击提交,完成视图创建。 视图创建完成后,您可以在左侧视图栏进行以下操作:
单击➕继续创建视图,最多可创建100个视图。
单击➖删除您不再需要的视图。
切换不同视图和命名空间查看不同命名空间下的服务拓扑依赖数据。
服务拓扑依赖支持深色和浅色两个版本,您可以根据您的使用习惯单击右上角的
按钮进行切换选择。查看拓扑关系
1. 在服务依赖拓扑页面,选择要查看的视图(展示视图下所有命名空间中的服务依赖关系)或者选择视图下的单个命名空间。
2. 设置好时间范围(支持近30分钟、近10分钟、近5分钟以及选择特定时间段,特定时间段的时间跨度最长为7天)后,查看对应的服务依赖调用关系。
说明
当前服务依赖拓扑图中可以展示消息队列组件(Kafka、RocketMQ)、网关组件(微服务网关、API 网关)、数据库(Redis、MySQL、postgerSQL、MongoDB)和 httpclient (RestTemplate、Feign)。
不支持展示服务名为大写字母。
调用中出现消息队列组件时,暂时无法支持批量消费场景下的服务依赖拓扑图。
图例说明:
曲线的箭头表示发出调用,起始图标表示主动调用的服务。
蓝色的图标表示成功调用,黄色表示调用失败。
曲线上的数字表示两个服务间调用的平均耗时。
在服务拓扑图页面支持以下5个展示筛选条件:
默认
仅显示异常:仅展示调用异常的服务。
响应慢 Top5:展示调用平均耗时最长的5个调用关系。
显示平均耗时:选择后,调用曲线上显示调用平均耗时。
显示流量动效:点击查看动效,可以清晰地查看请求流动的方向。
在服务依赖拓扑关系图页面,您还可以进行以下操作:
您可以在通过右上角的
图标切换顺序排布和力导图排布。您可以通过右上角的
切换到3D布局,长按鼠标左键进行旋转操作,鼠标右键进行平移操作。您可以使用鼠标滚轮滑动,放大缩小视图。
查看监控数据
说明
要使用该功能,需要更新到1.12.0版本之后的 agent 和 SDK(Spring Cloud),否则无法看到调用概览。
在依赖拓扑依赖关系图中,点击某个服务,可锁定该服务整个上下游调用链路。页面显示服务名称、调用箭头、两个服务间调用的平均耗时。
单击服务旁的
图标可以进入到服务监控详情页面。详情请参见 服务监控。单击服务旁的
图标可以进入调用链详情页面。详情请参见 调用链跟踪。在页面右侧栏展示被选中服务的核心监控数据:
右侧栏上方展示选中服务的请求量、调用频率、错误率、平均响应耗时和最大调用时延,以及日环比数据。
右侧栏下方展示选中服务核心监控指标曲线图:请求量、错误率、响应耗时、响应耗时分布和 HTTP 状态码。
可视化参考
对依赖拓扑图的数据说明
图中,调用线上的时间,指从上游服务发出请求、到上游服务受到下游服务回包的时间。
调用线上会经历 Client service send、Server service receive、Server service send、Client service receive 的过程。
图中,服务圈内的数据,是站在服务 server 端采集到的。
从平均耗时角度而言,会经历从 Server receive 到 Server send 的过程。
Client-Server 过程可参考下图:
Apdex 释义
服务依赖拓扑使用应用性能指数(Apdex)对应用性能满意度进行量化,并使用不同颜色对不同区间 Apdex 的值进行标识,显示 span 健康度,方便您快速发现应用性能问题。
应用性能指数(Apdex)的计算方式如下:
默认情况下,调用时延说明如下:
正常调用:指调用时延小于或等于200ms的调用。
慢调用:指调用时延大于200ms小于或等于800ms的调用(4 × 200ms)。
极慢调用:指调用时延大于800ms的调用。
Apdex 取值范围说明如下:
Apdex 取值 | 说明 |
Apdex > 0.75 | 表示调用延时正常,图标为蓝色。 |
0.75 ≥ Apdex > 0.25 | 表示调用延时较大,图标为橙色。 |
Apdex ≤ 0.25 | 表示调用延时非常大,图标为红色。 |
通用参考
Apdex(Application Performance Index)是由 Apdex 联盟开发的用于评估应用性能的工业标准。Apdex 标准从用户的角度出发,将对应用响应时间的表现,转为用户对于应用性能的可量化范围为 0-1 的满意度评价。
Apdex 的原理
Apdex 定义了应用响应时间的最优门槛为 T(即 Apdex 阈值,T 由性能评估人员根据预期性能要求确定),根据应用响应时间结合 T 定义了三种不同的性能表现:
性能表现 | 说明 | 示例 |
Satisfied(满意) | 应用响应时间低于或等于 T。 | 例如,T 为1.5s,则一个耗时1s的响应结果则可以认为是 Satisfied 的。 |
Tolerating(可容忍) | 应用响应时间大于 T,但同时小于或等于 4T。 | 例如,应用设定的 T 值为1s,则4 × 1=4s为应用响应时间的容忍上限。 |
Frustrated(烦躁期) | 应用响应时间大于 4T。 | - |