首先,我将描述当前状态:
服务器由多个 WCF 服务组成,托管在不同机器上的一个或多个 win 服务中。
- 负责从不同设备接收数据的服务。与设备的通信是使用套接字实现的。服务实例模式 - 单例。
- 数据代理服务 - 负责持久化数据并按请求共享。实例模式 - 单例。
- 配置服务 - 负责更改配置数据库并使用管理控制台(WPF 应用程序,如 SSMS)。处理来自控制台、订阅者管理等的连接。实例模式 - 单例。
- 客户端访问服务 - 与上面的客户端管理完全相同,但也会通知客户端新数据,并且充当服务总线的门面。又是单身。
- 身份管理服务 - 检查权限并返回结果。辛格尔顿。
所有这些服务都与 NServiceBus 连接,我真的很喜欢它现在的工作方式。
但是:
单例太多。主要是因为要使用服务总线,我必须拥有它的单个实例 afaik。我不知道也许我可以在会话模式下使用 nservice 总线,但不知道如何处理所有这些服务将使用一个队列的问题。
如果我有 300 多个客户怎么办?单身人士可能会变得反应迟钝..
我想请教一些关于这一切的批评者,也许有人可以提出一些建议。
提前致谢。
阿列克谢