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

相关推荐
shuair29 分钟前
idea 2023.3.7常用插件
java·ide·intellij-idea
小安同学iter1 小时前
使用Maven将Web应用打包并部署到Tomcat服务器运行
java·tomcat·maven
Yvonne9781 小时前
创建三个节点
java·大数据
天宇&嘘月2 小时前
web第三次作业
前端·javascript·css
小王不会写code2 小时前
axios
前端·javascript·axios
不会飞的小龙人2 小时前
Kafka消息服务之Java工具类
java·kafka·消息队列·mq
是小崔啊3 小时前
java网络编程02 - HTTP、HTTPS详解
java·网络·http
brevity_souls3 小时前
Spring Boot 内置工具类
java·spring boot
发呆的薇薇°3 小时前
vue3 配置@根路径
前端·vue.js
小钊(求职中)3 小时前
Java开发实习面试笔试题(含答案)
java·开发语言·spring boot·spring·面试·tomcat·maven