node.js如何参与移动?

现在,我打算开始学习使用node.js进行开发。

我希望我的问题很清楚 – 当你谈论node.js和mobile时,你是什么意思? 到由node.js开发的web应用程序,并且用户通过简单的web浏览器或者纯粹的移动应用程序(例如用于java的android)以及node.js以某种方式参与这个过程(如何?)。

我问了这个问题,因为我看到Linkedin开发了一个基于node.js的移动应用程序,但是我不明白他们在哪里集成了node.js – 在web应用程序中? android应用程序? iOS应用程序? 对我来说不是很清楚(我的假设是networking应用程序,但我真的很困惑)。

谢谢。

NodeJS是一个服务器后端组件,它响应各种networking请求,但最常见的是HTTP请求。 对于移动应用程序,它可能用于与数据库接口并解释JSON HTTP调用,获取和/或插入数据,并将JSON数据返回给移动客户端。

在大多数情况下,iOS,Android和移动Web客户端将通过HTTP连接到NodeJS,以通过各种API发送GETPOST请求。

NodeJS也可以与每个平台上可用的各种推送通知系统进行接口,或者使用像SocketIO这样的东西来提供客户端和服务器之间的实时通信。

关于LinkedIn如何使用Node.js技术的文章可以在这里find:
http://venturebeat.com/2011/08/16/linkedin-node/

在LinkedIn上使用该技术的最大原因是由于速度和使用较less的资源。

这个应用程序在客户端比其前一版本快两到十倍,而在服务器端,它使用了一小部分资源,这要归功于从Ruby on Rails到Node.js的切换

新的移动应用程序可能会使用一些浏览器沙箱和原生应用程序代码。

“HTML5networking应用程序和原生应用程序之间有这种争斗。 但是,我们已经在本地应用程序中散布了HTML5,在这个应用程序中,基于networking的内容更胜一筹。 在HTML5中难以做到的事情是滚动的无限列表,所以我们就这样做了。

我们的移动networking应用程序的工作方式是所有渲染在浏览器端。

LinkedInselectNode的另外几个原因:

BlockquoteOne的原因是规模。 第二个是,如果你看看Node,最好的做法是与其他服务交谈。

希望这有助于回答你的问题。

Node.js (Node) is a scalable, event-driven I/O environment built on top of Google Chrome's JavaScript runtime—essentially, a server-side implementation of JavaScript. Google V8 actually compiles JavaScript into native machine code prior to execution, resulting in extremely fast runtime performance—something not typically associated with JavaScript. As such, Node enables you to rapidly build network apps that are lightning fast and highly concurrent.

它的真正含义是,Node.js不是一个silverlight的新平台,将主宰networking发展的世界。 相反,这是一个满足特定需求的平台。 而理解这是绝对必要的。 你绝对不希望使用Node.js进行CPU密集型操作; 实际上,将其用于繁重的计算将会取消几乎所有的优点。 Node真正发挥的作用是构build快速,可扩展的networking应用程序,因为它能够以高吞吐量处理大量的同时连接,这等同于高可扩展性。

它是如何工作的是非常有趣的。 与传统的Web服务技术相比,每个连接(请求)产生一个新的线程,占用系统RAM,并最终在可用的RAM数量上达到最大值,Node.js在单线程上运行,使用非阻塞I / O调用,允许它支持数万个并发连接

一个快速的计算:假设每个线程可能带有2 MB的内存,运行在具有8 GB RAM的系统上,理论上最多有4000个并发连接,加上线程间上下文切换的成本。 这是您通常在传统的networking服务技术中处理的情况。 通过避免这一切,Node.js实现了超过1M并发连接的可伸缩性级别

继续阅读.. http://www.toptal.com/nodejs/why-the-hell-would-i-use-node-js

黄金时段的公司依靠Node.js来提供移动解决scheme。

LinkedIn是一位杰出的用户。 他们的整个移动堆栈build立在Node.js上。 他们从每个物理机器上运行15个服务器的15个实例运行到只有4个实例 – 可以处理双倍的stream量!

eBay推出了ql.io,一种HTTP API的网页查询语言,它使用Node.js作为运行时栈。 他们能够调整一个普通的开发人员素质的Ubuntu工作站来处理每个node.js进程的超过120,000个活动连接,每个连接消耗大约2kB的内存!

沃尔玛重新devise了其移动应用程序以使用Node.js并将其JavaScript处理推送到服务器。

阅读更多: http : //www.pixelatingbits.com/a-closer-look-at-mobile-app-development-with-node-js/

他们指的是服务器后端的node.js。

例子是:

  • 具有node.js服务器后端的任务pipe理应用程序,用于存储任务和约会,并推送隐私。
  • 与node.js服务器后端的聊天应用程序,用于路由和传递消息