【深入浅出node.js】读书摘录1 - node.js简介

Node.js 是基于 V8 创建的轻量级 Web 服务器,旨在通过事件驱动、非阻塞 I/O 和异步特性提高网络应用的性能。它使用 JavaScript 实现,能够轻松访问本地文件、搭建 WebSocket 服务器、连接数据库,并支持多进程处理。Node.js 的特点包括异步 I/O、事件与回调函数、单线程设计等,适用于 I/O 密集型应用。Node.js 可用于前后端统一编程环境、实时应用、分布式环境优化及云平台支持。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第一章          Node简介

1.      Node初衷是基于V8创建一个轻量级的Web服务器,基于javascript。随着项目的发展,Node发展成为构建一个网络应用的基础框架。

2.      设计高性能Web服务器的要点:事件驱动非阻塞I/O、异步

3.      考虑到高性能、事件驱动、没有历史包袱等因素,Javascript成了Node的实现语言

4.      Node与Chrome的结构十分相似(除了HTML、WebKit和显卡UI)。

5.      在Node中,Javascript可以随心所欲地访问本地文件、可以搭建WebSocket服务器端,可以连接数据库,可以向Web Workers一样玩转多进程。

6.      Node的特点:

         (1)异步I/O: 在Node中,绝大多数操作都是以异步的方式进行调用,这样做的意义在于,Node中,可以从语言层面自然地进行并行I/O操作

         (2)事件与回调函数

         (3)单线程。Node保持了Javascript在浏览器中单线程的特点,Node中,Javascript与其余线程是无法共享状态的。单线程的好处是不用像多线程一样处处在意状态的同步问题,没有死锁的存在,也没有线程上下文切换所带来的性能上的开销.单线程的缺点是长期的CPU占用会导致后续的异步I/O无法发起调用,已经完成的异步I/O回调得不到及时执行。

Node中采用了与Web Workers相同的思路来解决单线程中大计算量的问题:child_process

         (4)Node基于libuv实现跨平台。目前,libuv已经成为许多系统实现跨平台的基础组件。

7.      Node的应用场景

         (1)适用于I/O密集型应用

         (2)对于CPU密集型的应用,要合理调度。

8.      node的使用

         (1)前后端编程语言环境统一

         (2)Node带来的高性能I/O用于实时应用

         (3)并行I/O可以更加高效利用分布式环境

         (4)并行I/O有效利用稳定接口提升Web渲染能力

         (5)云计算平台提供Node支持

         (6)游戏开发领域和工具类应用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值