通过实时通知为Web和移动设备开发消息传递应用程序。项目流程是......
我需要从服务器向可以从多个位置(网络和移动应用)连接的用户发送消息。
Web和API单独工作并访问Backend。请分享建议我应该使用哪些流程在我的项目中实现singalR
答案 0 :(得分:2)
这是一个广泛的问题,但我会给予足够的帮助,让你开始朝着正确的方向前进。由于您将处于负载平衡环境中,您需要实现背板。它位于Web服务器后面并聚合消息传递。以下是一些指导您设置SignalR的链接:
另外,你需要这些nuget包(最低):
答案 1 :(得分:2)
你想要达到的目标没有什么特别之处。 在发送SignalR消息之前,您的客户端应用程序需要进行身份验证。这样,您就可以识别用户并保护您的服务器资源。 这是我开始研究的第一部分(如果你谷歌的话,有很多关于这个问题的信息)。
然后,您需要从服务器向用户发送消息,并且该用户可以连接2个客户端应用程序(Web和移动设备或更多,与其他浏览器选项卡一样)。这可以使用SignalR组来实现。 SignalR组只是一组具有给定名称的连接(不是用户)。 一种常见的情况是为每个用户创建一个组,该组将保留用户的连接。这是SignalR组如何工作的逻辑伪结构(不是实际代码):
Group name: "johnUser"
Group connections: [
00001, // mobile app connection
00002, // brower tab connection
00003, // broswer tab connection 2
0000n // etc
]
这些数字是连接ID的模拟。 SignalR为您创建它们。 然后你只需要向该组发送一条消息,所有连接的客户端都将获得它。
如果你刚开始使用SignalR,我会不使实施backpane的事情复杂化,除非你真的需要它并且你知道你在做什么。单个服务器可以处理数百个并发连接,如果需要,可以稍后扩展。
关于体系结构, Web和API单独工作的含义并不十分清楚。如果在实际尝试编写代码后提出更具体的问题,那就更好了。