📚 课程介绍
本课程深入讲解Node.js在企业级应用中的最佳实践,包括日志处理、应用监控、稳定性提升、安全防范以及性能测试等,适合有Node.js基础的开发者。
📋 学习前提
1. Node.js基础(了解Node.js的基本语法和API) 2. JavaScript基础(熟悉JavaScript编程语言) 3. 网络基础(了解HTTP协议和TCP/IP网络)
📖 课程目录
第1章 课程简介
1-1 导学
第2章 运筹帷幄之中,决胜千里之外-Node.js APM (应用监控)的概念及实践
2-1 从零出发APM的核心概念
2-2 如何发现一个Nodejs应用的问题
2-3 如何发现一个Nodejs应用的问题
2-4 实战-使用0X火焰图工具查看CPU性能
2-5 Nodejs应用最经常出现的问题-内存泄漏
2-6 实战-观察内存溢出情况下的内存问题
2-7 讲解DockerDocker-composeGraphiteStatsD等概念
2-8 实战-快速搭建NodejsAPM监控平台
2-9 三种统计指标类型
2-10 介绍阿里云Nodejs性能平台的情况
2-11 实战-快速将你的Nodejs应用接入阿里云性能平台
2-12 实战-快速将你的Nodejs应用接入阿里云性能平台
第3章 进可攻,据可守-如何在生产环境部署一个稳定的 Node.js 应用
3-1 一个故事网站是怎么越做越大
3-2 一个故事网站是怎么越做越大
3-3 知识点回顾四层与七层Nginx与LVSNDS网关
3-4 负载均衡-回顾负载均衡的概念
3-5 Nodejs应用负载均衡的两个概念-服务进程负载均衡
3-6 Nodejs应用负载均衡的两个概念-RPC负载均衡
3-7 负载均衡算法
3-8 优雅退出gracefulexitNodejs应用优雅退出的概念及底层原理
3-9 优雅退出gracefulexit实战-最简单的优雅退出效果及实现
3-10 大厂如何发布一个新版本-问题篇
3-11 实战-利用nginx实现一个Nodejs金丝雀发布
3-12 大厂如何发布一个新版本-蓝绿发布
3-13 大厂如何发布一个服务-金丝雀滚动发布
3-14 健康检查healthcheck的简介
3-15 实战-给自己的Nodejs应用添加健康检查
3-16 通过pm2管理你的Nodejs应用
3-17 实战-使用pm2管理自己的Nodejs应用
3-18 PM2深度说说
第4章 知己知彼,百战百胜-Node.js 应用日志的收集与处理
4-1 深入浅出Nodejs日志
4-2 深入浅出Nodejs日志
4-3 日志怎么打到文件里
4-4 日志主要场景-服务器应用日志
4-5 什么是一份好的日志
4-6 打日志要避免的问题
4-7 使用ELK搭建自己的通用日志系统ELK介绍
4-8 使用ELK搭建自己的通用日志系统实战-搭建ELK服务
4-9 使用ELK搭建自己的通用日志系统实战-搭建ELK服务
第5章 无懈可击,坚如磐石-提高Node.js应用运行的稳定性
5-1 Nodejs应用安全风险介绍CSRFXSS
5-2 Nodejs应用安全风险越权SSRFHPP
5-3 Nodejs应用安全风险越权SSRFHPP
5-4 Nodejs应用安全风险不安全的跳转钓鱼目录遍历攻击
5-5 Nodejs应用安全风险ISP劫持计时攻击XST哈希表碰撞
5-6 安全问题的防范策略CSRFXSS基本防范措施
5-7 安全问题的防范策略越权SSRF
5-8 对NodejsAPI进行应用级限流NodejsAPI实施限流的必要性
5-9 对NodejsAPI进行应用级限流常见限流算法的原理
第6章 晴天时修屋顶,顺境中做规划-测试你的Node.js应用
6-1 本章简介
6-2 Node.js单元测试:单元测试的意义
6-3 Node.js单元测试:实战-Mocha的安装及测试用例管
6-4 Node.js单元测试:实战-Mocha的安装及测试用例管
6-5 Node.js单元测试:实战-编写测试用例的原则
6-6 Node,js性能测试:Node.js性能测试的简介
6-7 Node,js性能测试:什么样的场景必须要做性能测试
6-8 Node,js性能测试:实战-通过Artillery实施负
第7章 纸上得来终觉浅-应用线上问题排查讲解与实战
7-1 本章简介
7-2 内存管理:内存的引用、内存的释放与回收
7-3 内存管理:V8内存管理机制-老生代与新生代
7-4 内存管理:垃圾回收测试内存使用情况、模拟一下垃圾回收
7-5 内存管理:V8内存管理机制-老生代与新生代
7-6 内存泄漏:如何知道我们的代码占用了多少内存
7-7 内存泄漏:实战-通过devtools演示-浏览器工作与内存
7-8 内存泄漏:实战-通过浏览器和Node.js环境识别内存泄漏
第8章 课程总结
8-1 后续学习建议
