07-为什么选择Node.js
7.2.1 为什么选择Node.js
我们选择了Node.js作为服务器平台,因为它有能力表明它是主流单页应用的不错选择。
服务器就是应用。结果是无须担心搭建单独的应用服务器并与之交互。所有的东西都在一个地方由一个进程进行控制。
服务器应用的语言是JavaScript,意味着可以消除使用一种语言编写服务器应用、使用另外一种语言编写单页应用的认知负荷。也意味着可以在客户端和服务端之间共享代码,这有很多好处。比如,可以在单页应用和服务端上使用相同的数据验证库。
Node.js是非阻塞和事件驱动的。简单地说,这意味着在一般硬件上的单个Node.js实例,可以开启数万或者数十万的并发连接,比如用于实时消息传输的连接,这经常是主流单页应用非常希望具备的功能。
Node.js很快,得到了很好的支持,功能模块和开发人员的数量都在迅速壮大。
Node.js 处理网络请求的方式不同于其他大多数服务器平台。大多数 HTTP 服务器需要维护进程池或者线程池,准备为到达的请求提供服务。相比之下,Node.js 只有一个事件队列,会处理每个到达的请求,甚至在主事件队列中,会把请求的部分处理切分成单独的事件。在实际应用中这意味着,Node.js 不用等长时间的事件完成之后才去处理其他事件。如果一个特别的数据库查询要花费很长的时间,Node.js 会直接去处理其他事件。当完成数据库查询的时候,会在队列中放入一个事件,这样控制程序就可以使用该结果了。
言归正传,我们开始学习Node.js,看看如何用它来创建Web服务应用。