专栏名称: 前端Q
我是winty,专注分享前端知识和各类前端资源,乐于分享各种有趣的事,关注我,一起做个有趣的人~
目录
今天看啥  ›  专栏  ›  前端Q

一篇文章构建你的 NodeJS 知识体系【上】

前端Q  · 公众号  · 前端  · 2024-10-30 09:15
    

主要观点总结

本文介绍了Node.js的多进程和多线程模型,以及在不同情况下使用多进程和多线程的优势和注意事项。同时,文章还探讨了Node.js的异常处理机制,包括如何处理未捕获的异常和未处理的Promise拒绝。此外,文章还介绍了使用第三方模块管理依赖和配置的方法,以及如何在Node.js中进行项目管理,包括多环境配置和依赖管理。

关键观点总结

关键观点1: 多进程和多线程模型

Node.js的child_process和cluster模块提供了多进程模型,而worker_threads模块提供了多线程模型。在Node.js中,多进程模型通常用于模拟多线程模型,而真正的多线程模型则需要在Node.js 10.5.0版本之后使用worker_threads模块。

关键观点2: 异常处理

Node.js提供了几种异常处理机制,包括使用process.on('uncaughtException')和process.on('unhandledRejection')处理未捕获的异常和未处理的Promise拒绝。同时,可以通过domain模块创建实例来覆盖错误,使得在回调中导致的错误能够被捕获和处理。

关键观点3: 依赖和项目管理

在Node.js中,可以使用dependencies、devDependencies和optionalDependencies来管理项目的依赖,其中dependencies是模块正常运行需要的依赖,devDependencies是开发时需要的依赖,optionalDependencies是非必要依赖。同时,可以使用第三方模块管理依赖和配置,如nconf。

关键观点4: 多环境配置

在Node.js中,可以使用JSON配置文件和环境变量进行多环境配置,以便在不同的环境中使用不同的配置。同时,可以使用第三方模块管理配置,如nconf。


文章预览

点击上方  前端Q ,关注公众号 回复 加群 ,加入前端Q技术交流群 安装 # 使用 nvm 安装 https://github.com/creationix/nvm #install-script # Git install nvm install nvm  alias  default # 卸载 pkg 安装版 sudo rm -rf /usr/ local /{bin/{node,npm},lib/node_modules/npm,lib/node,share/man/*/node.*} 全局变量 require(id) 内建模块直接从内存加载 文件模块通过文件查找定位到文件 包通过 package.json 里面的 main 字段查找入口文件 module.exports // 通过如下模块包装得到 (funciton (exports, require, module, __filename, __dirname) { // 包装头 }); // 包装尾 JSON 文件 通过 fs.readFileSync() 加载 通过 JSON.parse() 解析 加载大文件 require 成功后会缓存文件 大量使用会导致大量数据驻留在内存中,导致 GC 频分和内存泄露 module.exports 和 exports 执行时 (funciton(exports, require, module, __filename, __dirname) { // 包装头   console.log( ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览