【后端】深入浅出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 操作时尤其有效,可以提高系统的并发性能。**

相关推荐
鱼鳞_10 小时前
苍穹外卖-Day07(缓存菜品)
java·缓存
HelloAldis11 小时前
Java 库 univer-lib:让 Univer Sheets 与 xlsx 无损双向转换
java·开发语言·xlsx·univer
Lee川17 小时前
Milvus 实战:当 RAG 遇上向量数据库,从"玩具 Demo"到"生产可用的"那一步
前端·数据库·人工智能
anOnion18 小时前
构建无障碍组件之Toolbar Pattern
前端·html·交互设计
惊鸿一博18 小时前
图标加载方式_zeroIcon_是否加前缀mdi
开发语言·前端·javascript
王八八。18 小时前
linux后台java、postSQL部署命令
java·linux·运维
2501_9400417418 小时前
前端工程化进阶:5个高交互与可视化项目提示词
前端
你很易烊千玺18 小时前
JS 异步 从零讲(大白话 + 真实场景 + 可运行案例)
前端·javascript·vue.js
月落归舟19 小时前
MyBatis缓存机制
java·缓存·mybatis
huipeng92619 小时前
企业级微服务开发实战(一):项目启动与工程化设计
java·开发语言·spring boot·spring cloud·微服务·云原生·架构