Node.js是什么
Node.js,或者 Node ,是一个可以让 JavaScript 运行在服务器端的平台。它可以让
JavaScript 脱离浏览器的束缚运行在一般的服务器环境下,就像运行 Python、Perl 、PHP 、Ruby 程序一样。你可以用 Node.js 轻松地进行服务器端应用开发,Python 、Perl 、PHP 、Ruby 能做的事情 Node.js 几乎都能做,而且可以做得更好。
Node.js 是一个为实时Web(Real-time Web)应用开发而诞生的平台,它从诞生之初就充分考虑了在实时响应、超大规模数据要求下架构的可扩展性。这使得它摒弃了传统平台依靠多线程来实现高并发的设计思路,而采用了单线程、异步式I/O、事件驱动式
的程序设计模型。这些特性不仅带来了巨大的性能提升,还减少了多线程程序设计的复杂性,进而提高了开发效率。
Node.js 是一个让 JavaScript 运行在浏览器之外的平台。它实现了诸如文件系统、模块、包、操作系统 API 、网络通信
等 Core JavaScript 没有或者不完善的功能。
Node.js 的 JavaScript 引擎是 V8 ,来自 Google Chrome 项目。V8 号称是目前世界上最快的 JavaScript 引擎,经历了数次引擎革命,它的 JIT (Just-in-time Compilation,即时编译)执行速度已经快到了接近本地代码的执行速度。Node.js 不运行在浏览器中,所以也就不存在 JavaScript 的浏览器兼容性问题,你可以放心地使用 JavaScript 语言的所有特性。
Node.js适用场景
Node.js 为网络而生。Node.js 能做的远不止开发一个网站那么简单,使用 Node.js ,你可以轻松地开发:
具有复杂逻辑的网站;
基于社交网络的大规模 Web 应用;
Web Socket 服务器;
TCP/UDP 套接字应用程序;
命令行工具;
交互式终端程序;
带有图形用户界面的本地应用程序;
单元测试工具;
客户端 JavaScript 编译器。
Node.js 内建了 HTTP 服务器支持,也就是说你可以轻而易举地实现一个网站和服务器的组合。
Node.js特点
Node.js 最大的特点就是采用异步式 I/O 与事件驱动
的架构设计。对于高并发的解决方案,传统的架构是多线程模型,也就是为每个业务逻辑提供一个系统线程,通过系统线程切换来弥补同步式 I/O 调用时的时间开销。Node.js 使用的是单线程模型,对于所有 I/O 都采用异步式的请求方式,避免了频繁的上下文切换。Node.js 在执行的过程中会维护一个事件队列,程序在执行时进入事件循环等待下一个事件到来,每个异步式 I/O 请求完成后会被推送到事件队列,等待程序进程进行处理。 Node.js 的异步机制是基于事件的,所有的磁盘 I/O 、网络通信、数据库查询都以非阻塞的方式请求,返回的结果由事件循环来处理。
分享到:
相关推荐
《Node.js开发指南》是一本面向初学者的Node.js教程,旨在帮助开发者快速掌握这个基于Chrome V8引擎的JavaScript运行环境。Node.js以其高效的非阻塞I/O模型和事件驱动特性,成为构建网络应用的强大工具,尤其在实时...
Node.js是一种方兴未艾的新技术,诞生于2009年。... 而本书的目的就是帮助读者扫清这些障碍,学会使用Node.js进行Web后端开发,同时掌握事件驱动的异步式编程风格,以便进一步利用Node.js的高级特性。
内容概要:《Node.js开发指南-课件和源代码.rar》是一份包含课件和源代码的压缩文件。该资源提供了关于Node.js开发的详细指南,涵盖了Node.js的基础知识、核心模块、异步编程、Web开发、数据库访问等内容。 适用...
《Node.js开发指南1》是一本面向初学者的Node.js入门教程,旨在帮助读者快速掌握Node.js的基础知识和实践技能。作者通过实例讲解和案例教学的方式,深入浅出地介绍了Node.js的核心概念、核心模块以及Web开发实战。 ...
《Node.js开发指南》是一本深入探讨Node.js技术的书籍,其PDF版本为开发者提供了方便的电子学习资源。Node.js是一种基于Chrome V8引擎的JavaScript运行环境,它以其高效的非阻塞I/O模型和事件驱动架构,使得...
《Node.js开发指南》是一本深入探讨Node.js技术的书籍,尤其适合初学者和有一定JavaScript基础的开发者。Node.js是一个开放源代码、跨平台的JavaScript运行环境,它允许开发人员在服务器端执行JavaScript代码,打破...
《Node.js权威指南》旨在成为Node.js领域最全面、最系统和最具实战性的一本书,供初学者系统学习和开发者工作时参考。本书作者是资深Web开发专家,不仅全面、细致地讲解了Node.js的所有功能、特性、使用方法和开发...
《Node.js开发指南》是一本面向初学者的Node.js教程,旨在帮助读者快速掌握Node.js的使用,尤其适合对Web后端开发感兴趣并且希望通过Node.js技术进行开发的读者。本书内容丰富,涵盖了从Node.js的基本概念到实际项目...
本书假设你是一名有经验的PHP开发人员,并且已经开始学习如何编写Node.js。本书介绍了PHP和Node.js这两种语言惊人的相似之处,并详细讲解了如何将整个PHP Web应用转换为Node.js。通过对比一些PHP和Node.js的特性,你...
《图灵系列图书--Node.js开发指南》是一本专为初学者和有一定JavaScript基础的开发者设计的书籍,全面深入地介绍了使用Node.js进行后端开发的知识。Node.js是由Ryan Dahl在2009年创立的一个开源项目,它基于Chrome ...
**Node.js开发指南微博例子** Node.js是一种基于Chrome V8引擎的JavaScript运行环境,它以其非阻塞I/O和事件驱动的特性,使得它在构建高性能的网络应用方面展现出强大的优势。在这个“Node.js开发指南微博例子”中...
总的来说,《Node.js开发指南》涵盖了Node.js从基础到进阶的各个方面,无论你是JavaScript新手还是希望转战服务器端的前端开发者,都能从中受益匪浅。通过阅读这本书,你将具备使用Node.js开发高效、可扩展的网络...