NodeJs和signalR之间的devise考虑

我有一个完全使用.net C#构build的Web服务。 现在我想要使用signalR或节点JS,以便如果Web服务有一些更新,它可以推送到客户端,这是在HTML的JavaScript。

devise考虑:

我在IIS上运行我的Web服务。

客户端在Html的JavaScript

用户数可能很高。 可能是100或200

networking服务将会有很长一段时间的频繁更新。

Web服务确实需要DB调用和less量的计算

服务器规范不是一个问题。

需要Web服务的稳定性和安全性

如果您已经在后端使用Microsoft堆栈(.NET,C#,IIS),那么使用SignalR是有意义的,因为它将与您现有的堆栈很好地集成。

你已经有了C#的开发经验,你也有在NodeJS的经验吗? 如果不是那么这是一个重要的考虑点,因为将有一个学习期间,你已经习惯了编程JavaScript节点的方式。

对于NodeJS或SignalR来说,100-200个用户并不是那么多。 SignalR使用.NET的一些asynchronousfunction,因此一个线程不会被打开的连接使用,直到某些事情准备好发生(例如,您可能正在等待数据库IO)。 同样,节点中的所有IO应该是asynchronous完成的。

如果你使用的是SQL服务器,那么你可能会发现使用SignalR开放其他的可能性,例如使用entity framework来提高生产力,并更快地将产品推向市场。

至于稳定性和安全性,这些往往取决于您devise,编写和configuration应用程序的方式,而不是技术堆栈本身。

编辑:一些资源,开始在我发现以前有帮助的各种技术:

  • SignalR
  • 的NodeJS