如何在 C# 中从服务器通知客户端



我在服务器端有一个Windows应用程序和一个Web服务,在另一端(客户端)有一个Windows表单应用程序。我想在服务器上发生更改时从服务器通知客户端。一种方法是客户端不断检查服务器。但是服务器会太忙,因为客户端数量约为100,000。最好的方法是什么?

  • 一种方法是使用双工合约

如何:创建双工协定

双工协定是可用于 Windows Communication Foundation (WCF) 服務。另外两条消息 模式是单向的,是请求-答复的。双工合同包括 客户端和服务器之间的两个单向协定,并且不 要求方法调用相关。使用这种合约 当服务必须查询客户端以获取详细信息时,或 在客户端上显式引发事件

  • 我猜你也可以使用信号器

信号简介

ASP.NET SignalR 是面向 ASP.NET 开发人员的库,可简化 向应用程序添加实时 Web 功能的过程。 实时 Web 功能是服务器代码推送的能力 内容在可用时立即提供给连接的客户端,而不是 而不是让服务器等待客户端请求新数据。

更新[回复评论]

WFC双工合同是非常安全的,是实现结果的可靠方式。Signalr是一种非常轻量级的方法,既不可靠也不安全。

是的,您是对的,在基本级别需要某种套接字连接,尽管您确实需要研究这两个选项来找出最适合您的选项。我个人在Signalr方面取得了很大的成功,并且经常使用它,它易于设置,并且相当容错。虽然如果安全性和可靠性是一个问题,那么双工合同可能是你最好的选择

最新更新