
支持性工具
|
199
14.14
依赖跟踪和拓扑可视化
跟踪微服务之间的数据依赖关系对于组织运行事件驱动型微服务非常有用。唯一的要求是
组织必须知道哪些微服务正在读写哪些事件流。为了实现这一点,可以采用一个自上报系
统,让消费者和生产者上报自己的消费模式和生产模式。然而,自上报解决方案的问题在
于,它实际上是自愿的,而且总会有一些团队忘记、退出,或者就是单纯地不愿意上报。
在不是所有人都参与的情况下并不能很有效地确定依赖性,因为沟通结构中的漏洞和不完
整的拓扑会限制洞察力。这就是本章前面讨论的权限结构和
ACL
发挥作用的地方。
利用权限结构来确定依赖关系确保了两件事情。首先,微服务在没有注册其权限需求的情
况下无法运行,因为它将无法读取或写入任何事件流。其次,如果对权限结构进行了任何
变更,则用于确定依赖关系和拓扑生成的相关权限也会更新。无须其他更改即可确保正确
的依赖跟踪。
以下是此类工具的一些其他用途。
确定数据沿袭
数据科学家和数据工程师经常遇到的一个问题是,如何确定数据从何而来以及是如何路
由的。通过权限结构的完整图形,他们可以识别任何给定事件的每个祖先服务和流。这
可以帮助他们追溯有缺陷的源代码,并确定给定数据转换中涉及的所有服务。请记住,
可以在权限事件流和微服务
–
团队分配事件流中返回到某个时间点
,以在该时间点生成
拓扑视图。在审核旧数据时,这通常非常有用。
覆盖团队边界
拥有微服务和流的团队可以映射到拓扑上。当使用适当的可视化工具呈现时,拓扑将清
楚地显示哪些团队直接负责哪些服务。
发现数据源
可视化程序对数据发现来说是一个很有用的工具 ...