asp.net - Nodejs 与 SignalR : why do we need server-side javascript?

标签 asp.net node.js asynchronous signalr

自从我知道 Node.js 以来,我一直是它的粉丝。但是今天我发现了SignalR ,它为 ASP.NET 提供了另一种异步 - 可扩展 - 实时模型。

据我所知,Node.js 相对于 SignalR 的主要优势是在客户端-服务器之间共享代码(另一个优势应该是它是跨平台的),而 SignalR 的主要优势是更成熟的框架以及更好的工具 (IDE) 支持。所以我想知道:如果 SignalR 出现了,我们还需要 Windows 上的 Node.js 吗? Node.js 有什么我不知道的优点吗?

最佳答案

SignalR 是 Socket.IO 和 Node.js 的可行替代方案。然而,在服务器上使用 javascript 还有其他原因。

  1. 它使堆栈变平。如今,几乎所有网站都必须在浏览器上安装 javascript,如果您也在服务器上使用它,您可以从必须精通的语言中剔除一种语言。

  2. 消息传递非常自然。 JSON 无处不在!尤其是结合使用 JSON 的文档数据库,所有的消息传递都变成了 JSON 对象。这可以减少必须在整个系统中发生的消息代理数量。

  3. 这不是微软。我个人喜欢微软为开发社区所做的一切。他们制作了出色的工具,并且是周围最好的框架和语言之一。话虽如此,有些人就是喜欢讨厌微软。

  4. 成本。有很多好方法可以免费或非常便宜地获得 Microsoft 工具(Express 版本和 Biz Spark)。与使用 Microsoft 工具相关的成本仍然较高。我相信在大多数情况下,这种成本值得提高生产力,但并非所有人都同意。

除了上述之外,还有一个故事是,由于线程模型,您无法在 IIS 上扩展长轮询请求。这有一些道理,但是 good code design ,以及一些服务器调整,您基本上可以解决这些问题。

关于asp.net - Nodejs 与 SignalR : why do we need server-side javascript?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9060645/

相关文章:

asp.net - 皮肤问题 telerik 控件

mysql - Sequelize 抛出错误 "must be unique"

css - ASP :Table long text wrapping

javascript - 数组内的数组

javascript - Nodejs 如何使用 Promise 进行迭代

C++ 每秒运行一次异步函数

c# - 小查询应该异步吗?

c# - 如何创建异步方法

asp.net - session 超时 .NET

asp.net - applicationSettings和Web.config