【问题标题】:What are the implications of node.js?node.js 的含义是什么?
【发布时间】:2020-11-05 18:20:42
【问题描述】:

我最近一直在阅读有关node.js 的信息。我看过很多关于它是如何真正伟大的文章,而且都是来自一些知名人士的文章。考虑到这个项目似乎有惯性,而且我目前正在学习 javascript 和 jQuery,这个项目引起了我的注意。我知道很多人对此感到兴奋,但我不太明白含义是什么。

我知道它是事件驱动的、非阻塞的等等,但我对它的意图感到困惑。

node.js 是否意味着我们现在有了在服务器端运行 Javascript 的基础,以便以后也许有人会为 node.js 创建 Ruby on Rails 或 ASP.NET MVC 等价物。 js/Javascript?也许已经有网络框架了,但如果是这样的话,我还没有听说过炒作机器。

我希望我的问题很清楚。

【问题讨论】:

标签: javascript node.js web-frameworks


【解决方案1】:

我认为主要影响有两个方面:巨大的性能和可扩展性提升,以及创建 Web 应用程序的可能性,让两个或更多人可以同时在同一个 Web 应用程序上工作,观察其他人在做什么,实时。后者不仅对基于网络的游戏有重大影响,而且对协作工具等也有重大影响。

看来 node.js 正是实时网络所需要的。对于这种事情,请务必查看Socket.IO,它实现了跨浏览器的 HTML5 网络套接字。结合 node.js,这是一个令人难以置信的平台。

查看node.js knockout 所做的事情,了解一些可以做的例子。

【讨论】:

    【解决方案2】:

    我认为你所希望的将更像是 Python 的 twisted,而不是例如。 rails 代表 Ruby——一个丰富、强大的框架,但仍然需要技巧和谨慎才能正确使用,因为异步编程总是这样......这是你为绝对令人敬畏的性能潜力付出的代价。

    存在并且一直存在 Javascript 服务器端框架,但由于服务器端 Javascript 从来都不是一个真正流行的选择,因此此类框架从未获得像 jQuery 这样的“临界质量”支持和热情,或者rails 用于服务器端的 ruby​​。

    我怀疑异步编程(其微妙和困难)将成为“大规模运动”的决定性触发因素(嘿,我希望我错了,但我看到例如Django 的 Python 相对受欢迎,没有任何令人敬畏的性能,与 Twisted 相比,_all_ 令人敬畏的性能......但内在的困难也是!-)。

    OTOH 的其他发展(简单地说,强大、高性能、可靠的 Javascript 引擎(如 V8)的广泛可用性)更有可能最终导致(非async;-) 服务器端 Javascript 选择, 因此开发( 或移植的可能性——例如,像 dojo 这样的框架已经可以提供很多一个 JS 服务器端应用程序,它实际上只有部分是客户端) 的强大、简单,因此最终流行的框架。尽管如此,我也不会屏住呼吸等待......

    【讨论】:

    • 谢谢。不过,作为澄清,我并不是说 node.js 可能会成为 Rails,我是在问 node.js 是否可以为以后构建在 node.js 之上的潜在“rails 等价物”奠定基础。
    • @Blaenk,我明白你在说什么——我的观点是,任何建立在异步机制之上的东西(这是有道理的;-)都是异步的——这不会是一样简单,因此不会像 rails 或 django 那样受欢迎(相反,它可能像 twisted 那样强大,而且不是那么受欢迎)。跨度>
    • 哦,我明白你的意思了。我想你在最后一段中的平行评论有点难以理解(双关语 xD)。
    【解决方案3】:

    Node.js 是一个application server,而不是另一个 webapp 服务器。正如文章所说,它省去了编写事件循环和使用两种语言编写应用程序(python/java/ruby/php 后端,js 前端)的麻烦。由于它基于 Google 的 V8 引擎,因此速度非常快,并且内存占用少。

    有一个名为 GeddyJS 的 web service framework,Node.js 带有一组用于 IO、数据库和数学的库。也可以使用插件对其进行扩展,尽管上次我检查文档时仍然有点粗糙。

    【讨论】:

      【解决方案4】:

      有一个名为 bogart 的节点框架,您可以轻松地使用 MVC 模式和 mustache 或 common-ejs 进行模板。

      http://github.com/nrstott/bogart

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-03-30
        • 2014-10-13
        • 2017-12-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-04-22
        • 2011-06-01
        相关资源
        最近更新 更多