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

相关推荐
Dicky-_-zhang2 小时前
系统容量规划与压测实战:从1万到100万QPS的科学扩容
java·jvm
2601_958492557 小时前
Optimizing Engagement with Freehead Skate - HTML5 Game - Construct 3
前端·html·html5
Dicky-_-zhang7 小时前
消息队列Kafka/RocketMQ选型与高可用架构:从单体到100万TPS的演进
java·jvm
晨曦中的暮雨7 小时前
4.15腾讯 CSIG云服务产线 一面
java·开发语言
fake_ss1987 小时前
AI时代学习全栈项目开发的新范式
java·人工智能·学习·架构·个人开发·学习方法
茉莉玫瑰花茶8 小时前
工作流的常见模式 [ 1 ]
java·服务器·前端
未若君雅裁8 小时前
Spring AOP、日志切面与声明式事务原理
java·后端·spring
zhangxingchao8 小时前
AI应用开发六:企业知识库
前端·人工智能·后端
No8g攻城狮8 小时前
【人大金仓】wsl2+ubuntu22.04安装人大金仓数据库V9
java·数据库·spring boot·非关系型数据库