Node第一章(介绍)

116 阅读1分钟

概述

  1. nodejs并不是 JavaScript 的运用,也不是编程语言,因为它使用的编程语言是javaScript,

    nodejs是JavaScript的运行时环境

  2. nodejs是构建在v8引擎之上的,v8引擎是由C/C++编写的,因此我们的JavaScript代码需要C/C++转换后执行

  3. nodeJS使用异步I/O和事件驱动的设计理念,可以高效处理大量 并发请求,提供了非阻塞式I/O接口和事件循环机制 ,使得开发人员可以编写高性能,可扩展的应用程序,异步I/O最终都是libuv 事件循环库去实现的

  4. nodeJS 使用npm作为包管理类似于Python的pip或者Java中的Maven 目前npm拥有上百万个模块。 www.npmjs.com/

  5. node适合干一些I/O密集的应用,不适合cpu密集的应用,nodeJS I/O依靠libuv有很强的处理能力,而cpu因为node是单线程的原因,容易造成cpu占用率过高,如果需要做cpu密集型应用,可以使用C++插件去编写或者nodeJS提供的cluster。(CPU密集型指的是图像的处理 或者音频处理需要大量数据结构 + 算法)

nodeJS大致架构图

nodejs应用场景

前端

Vue Angular React nuxtjs nextjs

后端

ServerLess

Web应用 express koa NestJS

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