【后端】深入浅出Node.js

文章目录

  • 1.Node简介
    • [1.1 诞生历程](#1.1 诞生历程)
    • [1.2 阻塞IO和异步IO](#1.2 阻塞IO和异步IO)

【后端目录贴】

1.Node简介

1.1 诞生历程

  • Node特点

事件驱动、非阻塞I/O

  • node和chrome浏览器区别

除了HTML、WebKit和显卡这些UI相关技术没有支持外,Node结构与Chrome十分相似,他们都是基于事件驱动的异步架构,浏览器通过事件驱动来服务界面上的交互,Node通过事件驱动来服务I/O

1.2 阻塞IO和异步IO

非阻塞 I/O(Non-blocking I/O)是一种 I/O 模型,而异步 I/O(Asynchronous I/O)是一种编程模型。异步 I/O 使用非阻塞 I/O 的机制来实现。
非阻塞 I/O 是指在进行输入/输出操作时,如果当前没有数据可用,程序不会被阻塞等待数据的到达,而是立即返回,由程序负责稍后再试。
异步 I/O 是一种编程模型,允许程序在发送 I/O 操作请求后,不需要等待操作完成,而可以继续处理其他任务。通过注册回调函数或使用 Promise 对象等方式,程序可以在 I/O 操作完成后得到通知,并处理已完成的操作。

**在非阻塞 I/O 的机制下,通过合理地设计和使用回调函数、事件循环等机制,可以实现异步 I/O 的编程模型。
所以,可以说非阻塞 I/O 包括了异步 I/O,异步 I/O 是一种利用非阻塞 I/O 实现的编程模型。在异步 I/O 中,程序可以通过非阻塞的方式发起 I/O 操作,并通过回调或其他方式得到操作完成的通知,然后继续处理其他任务。这种模型在处理大量同时进行的 I/O 操作时尤其有效,可以提高系统的并发性能。**

相关推荐
程序员老赵3 分钟前
Docker 部署填鸭表单完整教程:搭建私有化问卷与表单收集平台
前端·docker·开源
重生之小比特8 分钟前
【Java SE】抽象类和接口
java·开发语言
Lyyaoo.12 分钟前
【设计模型】策略模式
java
无限压榨切图仔18 分钟前
向量库能搜到内容,为什么还不算学会 RAG
前端·agent
mmsx19 分钟前
MapLibre 实战 11|用户说"我的地块丢了":一个 sealed class 图层模型,和四个让我重构三版的坑
android·前端·开源
xqchen21 分钟前
代码差异可视化方案选型:diff2html 实战指南
前端
譕痕21 分钟前
Idea 集成 智能体开发工具“千问(qwen)”
java·ide·spring·语言模型
名字还没想好☜23 分钟前
用 Zustand 做 React 全局状态管理:告别 Context 重渲染,3 个实战模式与持久化
前端
用户81818706274627 分钟前
第27章 消息丢失/重复消费的全链路排查(生产者→Broker→消费者)
java·后端
IMPYLH32 分钟前
HTML 的 <section> 元素
前端·html