First Day
发布在Note of learning AngularJS2015年3月19日view:1449sideAngularjs
在文章任何区域双击击即可给文章添加【评注】!浮到评注点上可以查看详情。

What is Node.js

一个 “编码就绪” 服务器
Node 是一个服务器端 JavaScript 解释器,它将改变服务器应该如何工作的概念。它的目标是帮助程序员构建高度可伸缩的应用程序,编写能够处理数万条同时连接到一个(只有一个)物理机的连接代码。

Why Node.js

当前的服务器程序有什么问题?
在 Java™ 和 PHP 这类语言中,每个连接都会生成一个新线程,每个新线程可能需要 2 MB 的配套内存。在一个拥有 8 GB RAM 的系统上,理论上最大的并发连接数量是 4,000 个用户。随着您的客户群的增长,如果希望您的 Web 应用程序支持更多用户,那么,您必须添加更多服务器。
除成本上升外,还有一个潜在技术问题,即用户可能针对每个请求使用不同的服务器,因此,任何共享资源都必须在所有服务器之间共享。
鉴于上述所有原因,整个 Web 应用程序架构(包括流量、处理器速度和内存速度)中的瓶颈是:服务器能够处理的并发连接的最大数量。

Node 解决这个问题的方法
更改连接到服务器的方式。每个连接发射一个在 Node 引擎的进程中运行的事件,而不是为每个连接生成一个新的 OS 线程(并为其分配一些配套内存)。Node 声称它绝不会死锁,因为它根本不允许使用锁,它不会直接阻塞 I/O 调用。Node 还宣称,运行它的服务器能支持数万个并发连接。

Compare Server like Apache
基础 Node 产品肯定不 像 Apache 或 Tomcat。本质上,那些服务器 “安装就绪型” 服务器产品,支持立即部署应用程序。通过这些产品,您可以在一分钟内启动并运行一个服务器。
Node 本身运行 V8 JavaScript。V8 JavaScript 引擎并不仅限于在一个浏览器中运行。因此,Node 实际上会使用 Google 编写的 V8 JavaScript 引擎,并将其重建为可在服务器上使用。

How Node.js works

Node 使用了一个所谓的事件驱动编程模型。一个连接被建立,这是一个事件!数据通过连接进行接收,这也是一个事件!数据通过连接停止,这还是一个事件!

More…

  1. 参见 Node 模块页,该页列出了所有可用于 Node 中的模块。
  2. 快速入门
评论
发表评论
暂无评论
WRITTEN BY
JoyceLee_努力早睡
speak less, code more, read more
TA的新浪微博
PUBLISHED IN
Note of learning AngularJS

A note to urge and remind myself study it everyday \(≧∇≦)/

我的收藏