node.js应用场景分析

本文介绍了Node.js作为JavaScript运行时的基础概念,强调其基于Chrome V8引擎构建的特点。Node.js采用事件驱动及非阻塞I/O模型,适用于I/O密集型而非CPU密集型任务。文章列举了Node.js在实际工作中的常见用途,包括Web服务器搭建、本地代码构建及实用工具开发等。

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

node.js是什么?

node.js is a javascript runtime built on Chrome’s V8
node.js 是一个运行时,并不是一个语言
node.js的两个特性:事件驱动、非阻塞I/O模型


非阻塞I/O

  • 阻塞I/O: I/O时,进程休眠,等待I/O完成后进行下一步;
    以读读取磁盘上的一段文件为例子,系统内核在完成磁盘寻找轨道、读取数据、复制数据到内存中之后,这个调用才结束;
  • 非阻塞I/O:阻塞I/O造成了CPU等待I/O,浪费了等待时间,CPU处理能力得不到充分利用,为了提高性能,内核提供了非阻塞I/O,非阻塞I/O最大的区别就是调用之后会立即返回;


Node.js场景

Node.js擅长于I/O密集型业务(文件操作、网络操作、数据库相关操作),不擅长于CPU密集型业务(压缩、解压、加密、解密);
Node.js在公司中,经常用来做以下业务:
- WebServer
- 本地代码构建
- 实用工具开发


web中常见的场景(web是I/O密集型)

  • 静态资源读取
  • 数据库操作
  • 渲染页面(读取模版文件、根据数据生成HTML页面)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值