C#WCF - 自定义服务器端监视实现

时间:2010-08-06 07:47:59

标签: c# wcf

方案

  • 我使用WCF在C#中编写了一个分布式应用程序。
  • 它使用客户端/服务器架构,实现发布者/订阅者设计模式,以便将新数据“推送”到客户端。
  • 服务器端托管在Windows服务中,客户端是Windows窗体应用程序。
  • 服务器端不断循环执行一系列进程并将结果发送给客户端。
  • 我想在应用程序中添加一个整个区域,以监控服务器端的所有内容。

问题

  • 这是我有点卡住的地方 - 我无法决定如何监控这些东西。

思想

  • 我是否创建了一个用于存储大量不同信息的对象 - 服务器端循环中进程所在的日志,异常(如果有),错误等等?
  • 我想真正的问题是,如何才能成功维护应用程序的监控方面,从而为我提供相关信息?
  • 也许服务器端的中央缓存每隔一段时间就会被“抢断”一次,并用信息更新客户端?

1 个答案:

答案 0 :(得分:0)

您想知道服务器中当前正在发生什么,或者您是否也希望了解发生的情况?

如果您只是想知道此时发生了什么,我的解决方案是将当前服务器状态保持在内存中(这不应该太难)并让监控客户端在需要时调用服务器知道发生了什么。

如果要保留已发生事件的历史记录,则需要一些数据存储,服务器可以在其中写入事件。然后,监控客户端可以读取此数据存储,以显示现在发生的情况以及过去发生的情况。更好的是,如果客户端没有直接访问此数据存储,而是联系服务器以获取相关信息。这样,您可以从客户端隐藏监视历史记录的实现细节。