我正在创建一个 WCF 服务,多个用户连接到它。在我的 WCF 上,我实现了回调协定,以便如果用户执行特定操作,它可以通知连接到同一 WCF 服务的其他计算机。因此,如果 A 公司在 WCF 服务上创建了一个操作,那么 WCF 服务将对连接到它的所有 A 公司机器进行回调。例如,B 公司将不会收到任何通知。
无论如何,到目前为止一切都很好。将来同时有更多连接会怎样?这会导致问题吗?
为了避免这个问题,创建一个连接不保持打开的 Web 服务会更好吗? 这种方法的问题是 Web 服务需要向多台计算机发送通知的回调机制。为了解决回调问题,我将让所有机器每 10 秒向 Web 服务器发送一个 UDP 数据包。(这将使路由器打开一个端口,以便网络服务器可以在需要时回复)例如,如果网络服务需要向 A 公司的所有计算机发送通知,那么它将发送多个 UDP 数据包。如果计算机从 Web 服务接收到 UDP 数据包,则它知道它必须发出请求才能执行回调。我应该使用这种方法吗?