Signal-R,带或不带 Web API?

vto*_*ola 3 asp.net signalr asp.net-web-api

我喜欢 Web API 如何允许创建 RESTful 界面。我还喜欢 Signal-R 允许您向客户端推送更新的方式。

但同时使用两者可以吗?我的意思是,Signal-R 始终保持与服务器的连接(或通过长轮询模拟连接),继续创建不同的连接以在 Web API 中执行交互不是浪费资源吗?

我可以通过 Signal-R 连接与服务器交互,但随后我失去了所有出色的 Web API 功能。

干杯。

Dre*_*rsh 5

我看到这个问题反复出现,我的答案一直是你应该只使用 SignalR 进行实时消息传递(例如来自服务器的通知或客户端间消息传递),并在其他地方使用 WebAPI(例如客户端只是告诉服务器做某事/请求某些资源)。

虽然您可以将 SignalR 用于后者,但一旦达到一定规模,您就会遭受巨大的损失,因为每条发送到服务器的消息必须在背板实现上散开,这样最终只有服务器实际上需要承认它。