监视/管理来自多个客户端的windows服务的最佳策略?。(C#)

监视/管理来自多个客户端的windows服务的最佳策略?。(C#),c#,windows-services,C#,Windows Services,我有一个windows服务(.net),它是一个自定义协议的实现。我需要从多个桌面客户端监视此服务(数据包到达、被拒绝、出错等) 我正在评估不同的替代方案(远程处理、套接字多播等),但我想知道这个问题是否有标准的解决方案。我认为这是一个非常常见的场景,如果您认为在IIS、服务组件等服务中,您可以同时从多个客户端远程连接并管理服务 我感谢你的建议和例子 提前谢谢。 引用维基百科(我强调了有趣的部分): 简单网络管理协议(SNMP)是一种“用于管理IP网络上设备的Internet标准协议。通常支持S

我有一个windows服务(.net),它是一个自定义协议的实现。我需要从多个桌面客户端监视此服务(数据包到达、被拒绝、出错等)

我正在评估不同的替代方案(远程处理、套接字多播等),但我想知道这个问题是否有标准的解决方案。我认为这是一个非常常见的场景,如果您认为在IIS、服务组件等服务中,您可以同时从多个客户端远程连接并管理服务

我感谢你的建议和例子

提前谢谢。

引用维基百科(我强调了有趣的部分):

简单网络管理协议(SNMP)是一种“用于管理IP网络上设备的Internet标准协议。通常支持SNMP的设备包括路由器、交换机、服务器、工作站、打印机、调制解调器机架等。”它主要用于网络管理系统中,以监控网络连接的设备是否存在需要管理注意的情况


C#实现:

一个简单的实现就是使用


然后,您就可以使用WMI通过自定义命令管理服务。

希望我能投多张赞成票。我将以极大的兴趣关注链接项目。嗨,jgauffin,我有SNMP的经验,这是一个非常复杂的方法。我的服务是使用比SNMP更简单的协议管理网络设备。我认为SNMP是管理服务背后的设备,而不是管理服务。我同意,一开始它似乎很复杂。但所有这些数字都是有充分理由的。试着看一些代码示例(例如CodeProject),你会发现这并不是什么神奇的东西。另一方面,您的客户可以使用任何SNMP监视器应用程序来跟踪您的应用程序。这是一个很大的销售点。这是一个内部解决方案,除了我的老板之外,我不需要把它卖给任何人,他喜欢简单的解决方案。我喜欢专业的解决方案,然后我需要一个让我们双方都开心的解决方案。如果您认为SNMP太复杂,请选择WCF。不知道这一点,这似乎是一个有趣的问题solution@Ariel,@Aliostad:如果你的目的是监控服务,我看不出这会起什么作用。您最多只能从客户端向服务传递128个不同的“命令”,而无需附加参数。您无法通过这种方式从服务接收任何内容,因此您将无法监视它(如果我在您的回答中没有遗漏某些内容)。可能的重复项:。请注意,大多数答案表明WCF是最合适的策略。一旦配置好,它的使用就非常简单。