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

相关推荐
javaer炒粉16 分钟前
provide,inject父传子
javascript·vue.js·elementui
LvManBa21 分钟前
Vue学习记录之五(组件/生命周期)
javascript·vue.js·学习
EPSDA1 小时前
Java的IO流(二)
java·开发语言
zzlyyds2 小时前
SpringBoot---------Actuator监控
java·spring boot·spring·actuator
vitobo2 小时前
Java的JDBC编程
java·开发语言
呆萌小新@渊洁2 小时前
后端接收数组,集合类数据
android·java·开发语言
A_cot3 小时前
深入了解 Maven 和 Redis
java·redis·maven
liuyang-neu3 小时前
力扣中等 33.搜索旋转排序数组
java·数据结构·算法·leetcode
爱吃烤鸡翅的酸菜鱼3 小时前
java(3)数组的定义与使用
java·开发语言·idea·intellij idea
ganjiee00073 小时前
力扣(leetcode)每日一题 2414 最长的字母序连续子字符串的长度
java·算法·leetcode