已锁定 。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。
我对这种东西是陌生的,但是最近我已经听到很多关于Node.js有多出色的信息。考虑到我一般喜欢使用jQuery和JavaScript有多少,我不禁想知道如何决定何时使用Node.js。我想到的Web应用程序有点像Bitly-需要一些内容,然后将其存档。
从过去几天我所做的所有作业中,我获得了以下信息。Node.js
在总结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编写代码非常有趣,其中很大一部分是花费更少的时间来考虑如何重组数据,因此可以轻松地在浏览器中运行代码操纵它并将其传递回去。