我为一组C ++和C#服务器做出贡献,这些服务器发布数据统计信息,连接状态和管理命令供管理客户端使用。当前的实现使用自定义中间件。
可以更改服务器和客户端的代码。我正在考虑迁移到一些标准的管理解决方案,以简化代码并提高稳定性。使用第三方工具的潜力也是一个优势。
我应该使用什么技术来管理界面...... WMI?它似乎是默认的,但我没有看到很多当前的书籍或文章。或者我应该公开一些常见的Web服务?或?
答案 0 :(得分:2)
我想说答案实际上取决于你的项目范围。
如果您的目标是仅限Microsoft Windows的客户端服务器平台,则可以计划检测服务器代码并构建WMI提供程序。 WMI来自标准(WBEM),但它仅供Microsoft使用。但是,使用WMI,您可以使用Nagios等开源管理工具。在您的客户端计算机上,您的服务器状态可以从PowerShell或VBScript中查询。
如果您的目标是混合Windows Linux客户端服务器平台,我认为SNMP(是的,这个旧的东西)仍然在竞争中,您可以计划检测服务器代码并构建SNMP代理服务器。在Windows机器上这不是那么难。该解决方案在任何平台上都可以打开大量的客户端管理工具。
我只会在范围是私人使用的情况下使用Web服务,您为服务器工具开发管理客户端,但据我所知,就管理而言,Web服务并不是那么标准。
答案 1 :(得分:1)
Web服务界面将是我如何做到的。这实际上将服务器与客户端分离,并允许您在客户端使用许多不同类型的应用程序与服务器进行通信。在服务中使用WMI也将成为这条路线的一部分。 WMI起初有点令人困惑,但提供了最大的灵活性。还有几个库可用于从WMI的细节中抽象出代码并将其视为控制层。