如何决定何时使用Node.js?

。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。

我对这种东西是陌生的,但是最近我已经听到很多关于Node.js有多出色的信息。考虑到我一般喜欢使用jQuery和JavaScript有多少,我不禁想知道如何决定何时使用Node.js。我想到的Web应用程序有点像Bitly-需要一些内容,然后将其存档。

从过去几天我所做的所有作业中,我获得了以下信息。Node.js

  • 是一种命令行工具,可以作为常规Web服务器运行,并且可以运行一个JavaScript程序
  • 利用强大的V8 JavaScript引擎
  • 当您需要同时做几件事时非常好
  • 是基于事件的,因此所有出色的类似于Ajax的工作都可以在服务器端完成
  • 让我们在浏览器和后端之间共享代码
  • 让我们谈谈MySQL

回答:

在总结Node.js的出色功能方面,您做了出色的工作。我的感觉是,Node.js特别适合希望从浏览器回到服务器的持久连接的应用程序。使用称为“长轮询”的技术,您可以编写一个向用户实时发送更新的应用程序。在RubynRails或Django之类的许多Web巨人上进行长时间的轮询会在服务器上产生巨大的负载,因为每个活动的客户端都要吃掉一个服务器进程。这种情况相当于一次pit弹袭击。使用Node.js之类的服务器时,服务器无需为每个打开的连接维护单独的线程。

这意味着您可以在Node.js中创建一个基于浏览器的聊天应用程序,该应用程序几乎不需要占用系统资源即可为大量客户端提供服务。每当您想进行这种长轮询时,Node.js都是一个不错的选择。

值得一提的是,Ruby和Python都具有执行此类操作的工具(分别是eventmachine和twisted),但是Node.js从头开始就表现出色。JavaScript在基于回调的并发模型中处于特殊位置,并且在这里很有用。而且,能够使用客户端和服务器都原生的JSON进行序列化和反序列化非常漂亮。

我期待在这里阅读其他答案,这是一个很棒的问题。

值得指出的是,Node.js对于在客户端/服务器之间重复使用大量代码的情况也非常有用。该流星框架使得这个非常容易,而且很多人都暗示这可能是网络发展的未来。我可以从经验中说,用Meteor编写代码非常有趣,其中很大一部分是花费更少的时间来考虑如何重组数据,因此可以轻松地在浏览器中运行代码操纵它并将其传递回去。

以上是 如何决定何时使用Node.js? 的全部内容, 来源链接: utcz.com/qa/410996.html

回到顶部