在我的日常工作中,我们负载均衡的Web服务器,通过Web服务(最近的WCF)与负载均衡的应用程序服务器交谈。在任何特定时间,我们有4-6个不同的团队可以添加新的网站或服务或使用现有服务。我们可能有大约20-30个不同的Web应用程序和相应的服务。识别ASP.NET Web服务引用
不幸的是,由于竞争优先级,组织结构,项目时间表,金融桶等原因,我们没有对此进行集中控制,这是相当混乱的。我们有多种可重用的服务,但有一些特定于前端的服务。
理想情况下,我们可以更好地控制这种情况,并且我们试图控制它,但这需要一段时间。我们想要做的一件事是更多地了解网站和应用程序服务器之间的所有相互关系。
我已经使用Reflector来查找程序集之间的依赖关系,但希望能够查看服务之间的通信模式。
尝试绘制Web服务关系的选项有哪些?大多数情况下,我们主要讨论内部服务(网络到应用程序,应用程序到应用程序,批次到应用程序等)。关于我的头顶,我可以想到两种方法来处理它:
- 分析任何Web引用的程序集。这里的缺点是,并非所有东西都是Web引用,我不确定WCF连接是如何列出的。但是,这至少是寻找80%连接的开始。有谁知道任何可以做分析的工具吗?就像我说过的,我已经使用Reflector作为程序集引用,但无法找到任何Web引用。
- 可能进入IIS并被动监控进出的流量,并以某种方式找出正在调用的内容以及从哪里来。我们正在研究那些可能有所帮助的企业工具,但在实施它们之前还需要一段时间(并且成本很高)。但是有什么可以帮助快速而便宜的?特别是一种工具(AmberPoint)可以利用服务器上的IIS并监控入站和出站流量,添加一点特殊酱油并开始构建流量图。非常好,但花费一大笔钱。
我知道,我知道,你到底是如何陷入混乱的呢?打败我,试图帮助我们控制它并摆脱它。
谢谢, 马特