在我的日常工作中,我们有负载平衡的 Web 服务器,它们通过 Web 服务(以及最近的 WCF)与负载平衡的应用程序服务器通信。在任何给定时间,我们都有 4-6 个不同的团队能够添加新的网站或服务或使用现有服务。我们可能有大约 20-30 种不同的 Web 应用程序和相应的服务。
不幸的是,由于相互竞争的优先级、组织结构、项目时间表、财务状况等,我们无法对此进行集中控制,这真是一团糟。我们有各种可重用的服务,但有一堆是特定于前端的。
理想情况下,我们会更好地控制这种情况,我们正在努力控制它,但这需要一段时间。我们想做的一件事是更多地了解网站和应用服务器之间的所有相互关系。
我使用 Reflector 来查找程序集之间的依赖关系,但希望能够查看服务之间的流量模式。
尝试绘制 Web 服务关系的选项有哪些?在大多数情况下,我们主要讨论的是内部服务(Web 到应用程序、应用程序到应用程序、批处理到应用程序等)。在我的脑海中,我可以想到两种方法来解决它:
- 分析任何 Web 引用的程序集。这里的缺点是并非所有内容都是 Web 参考,我不确定 WCF 连接是如何列出的。然而,这至少是寻找 80% 连接的开始。有谁知道可以进行这种分析的任何工具?就像我说的,我使用 Reflector 进行程序集引用,但找不到任何用于 Web 引用的内容。
- 可能利用 IIS 并被动地监视进出的流量,并以某种方式找出被调用的内容和来自何处。我们正在寻找可以提供帮助的企业工具,但要实施它们还需要一段时间(并且成本很高)。但是有什么东西可以快速而廉价地提供帮助吗?特别是一个工具(AmberPoint)可以接入服务器上的 IIS 并监控入站和出站流量,添加一些特殊的调味料并开始构建流量图。非常好,但要花很多钱。
我知道,我知道,你到底是怎么搞到这个烂摊子的?打败我,只是想帮助我们控制它并摆脱它。
谢谢,马特