WCF服务可以访问在同一进程中运行的其他ServiceHost吗?

时间:2012-04-18 14:05:51

标签: wcf service monitoring servicehost

我想创建一个服务,其工作是监视在同一进程中运行的其他服务,然后报告基本信息,如运行状况或服务依赖性。我无法找到监控服务的最佳方式来访问有关其他服务的详细信息,而无需让每个服务发布其元数据或公开监控服务可以与之通信的某些自定义端点。如果我加载配置并通读它,我可以获得大部分路径,但这种方法有一些缺点:

  • 获取每个端点的绝对URI可能很困难, 特别是在使用IIS托管或无文件激活时。
  • 监控服务无法读取以编程方式完成的任何配置

我希望能够以某种方式访问​​ServiceDescription以获取有关每个ServiceHost的所有信息,而无需服务设计人员的任何工作将其提供给我。这样的事情可能吗?

2 个答案:

答案 0 :(得分:1)

另一种方法是使用WCF的内置health monitoringperformance monitoring功能。这虽然适用于个人服务级别。

答案 1 :(得分:1)

如果您已经检查过Channs links,并且确信您需要推出自己的健康监控基础架构,那么您可能需要从ServiceHost派生或全力以赴,并从{{3或者可能两者都取决于你需要实现什么。他们将为您提供访问每个服务的ServiceDescription实例的权限。