概述
- nodejs 并不是
JavaScript
使用,也不是编程言语,由于编程言语运用的JavaScript
,Nodejs是JavaScript
的运转时。
-
Nodejs是构建在V8引擎之上的,V8引擎是由C/C++编写的,因此咱们的JavaSCript代码需要由C/C++转化后再履行。
-
NodeJs 运用异步 I/O 和事情驱动的设计理念,能够高效地处理很多并发恳求,供给了非堵塞式 I/O 接口和事情循环机制,使得开发人员能够编写高性能、可扩展的使用程序,异步I/O最终都是由
libuv
事情循环库去完成的。 -
NodeJs 运用npm 作为包管理工具类似于python的pip,或许是java的Maven,目前npm具有上百万个模块。 www.npmjs.com/
-
nodejs适合干一些IO密集型使用,不适合CPU密集型使用,nodejsIO依靠libuv有很强的处理才能,而CPU由于nodejs单线程原因,容易形成CPU占用率高,假如非要做CPU密集型使用,能够运用C++插件编写 或许nodejs供给的
cluster
。(CPU密集型指的是图像的处理 或许音频处理需要很多数据结构 + 算法)
nodeJs 大致架构图
Nodejs 使用场景
以下展示并不是所有东西都是nodejs编写而是运转环境能够配合nodejs或许依靠nodejs运转。
前端
Vue Angular React nuxtjs nextjs
后端
serverLess
web使用 epxress Nestjs koa
RPC 服务 gRPC
爬虫 Puppeteer cheerio
BFF层 网关层
及时性使用socket.io
桌前端
electron
tauri
NWjs
移动端
weex
ionic
hybrid
React Native
基建端
webpack vite rollup gulp
less scss postCss
babel swc
inquire command shelljs
嵌入式
Ruff js
单元测试
jest vitest e2e
CICD
Jenkins docker Husky miniprogram-ci
反向代理
http-proxy Any-proxy
结束语
经过本章的学习你能够了解到nodejs 高性能 可扩展 简单,及一些运用场景等。