Node.js全栈实践
Yunus Ma 查看讲师
百林哲咨询(北京)有限公司专家团队成员
某大型互联网公司前端技术专家,技术部,主要负责toB业务场景中的中后台研发,在信息无障碍、Node/Serverless BFF逻辑可视化编排、Node异常可视化诊断等领域有多年实践经验。
浏览:2332次
详情 DETAILS

课程简介

  在PHP或者.NET等服务器语言中,要为每一个客户端连接创建一个新的线程。一个服务器需要同时连接的最大用户数是有限的,要让web应用程序支持更多的用户,就需要增加服务器的数量,使硬件成本显著上升。NodeJs仅仅使用一个线程就可以决绝解决这个问题。当有用户触发一个内部事件,通过非阻塞I/O、事件驱动机制,让Node.js程序并行。使用Node.js,使用与PHP或者.NET等服务器语言相同内存大小的服务器,可以同时处理超过10倍用户的连接,大大降低成本。

本课程从Node基础开始,循序渐进的讲解了使用yeoman开发脚手架工具、服务端渲染SSR方案、Egg中间件的单元测试、异常日志诊断的可视化BFF等等,详细且全面的介绍了关于node的相关知识和运用技巧。

课程收益

掌握Node的基础知识

了解常用NPM模块、命令行工具以及网络编程

掌握Node BFF—Egg的理论知识,并且进行实战

了解Node与Java的调用、Node BFF与微服务的相关技巧

掌握持续集成服务端运维异常排查等等的方法

受众人群

架构师后端开发工程师、技术部门负责人等等,以及对Node感兴趣的人员。

课程周期

2天

课程大纲

标题

授课内容

掌握内容

一、Node基础0.5H

1. Node.JS介绍&应用场景

2. 线上运行版本推荐

3. npm模块管理系统

1. 掌握Node.js的适用范围&优势

2. 如何本地搭建Node环境

3. 如何开发、发布、使用npm模块

二、常用NPM模块(1H

1. 常用核心包与第三方包

2. 文件(夹)的读写操作

3. 流的读写操作

4. file和stream的区别

掌握常用的模块包括fs、path、stream、crypto、node-canvas、nodemailler等

三、命令行工具1H

yoeman-generator

掌握如何使用yeoman开发脚手架工具

四、网络编程0.5H

HTTP/WebSocket

开发一个简易的web服务 & websocket即时通讯服务

五、Node BFF—认识Egg1H

1. 初始化Egg工程

2. 认识Egg中的常见概念

3. 从零开发一个接口和页面

学习Egg的工程搭建,认识router(路由)、controller(控制器)、service(服务)、view(视图)、middleware(中间件)、plugin(插件)

六、Node BFF—Egg实战2H

1. 服务端渲染SSR方案

2. 登录&鉴权&安全

3. 如何开发中间件&插件

4. 常用Egg中间件

1. 掌握服务端渲染的两种不同方案:

• 模板引擎 (egg-view-nunjucks)

• 同构 (egg-view-react-ssr)

2. 学习常用插件的配置和使用:egg-session、egg-security、egg-mysql、egg-oss等

3. 如何开发中间件与插件以及它们的区别(生命周期和执行顺序)

4. 如何使用curl/axios 调用第三方接口(如发送钉钉机器人消息)

5. 学习如何使用nodemailer发送邮件

6. 学习如何开发定时任务(egg-schedux)

七、调试 & 测试1H

1. 断点调试

2. Egg中间件的单元测试

1. 学习如何使用Inspector /vscode launch.json配置调试模式

2. 学习如何使用mocha编写中间件的单元测试用例

八、Node与Java0.5

node-java 与 node-java-maven

掌握Node中如何调用Java

九、Node BFF与微服务1H

gRPC 与 sofa-rpc

1. 了解gRPC 和 sofa-rpc

2. 搭建 sofa-rpc

3. 学习egg-jar2proxy,将jar转义成nodejs可调用的协议

十、持续集成1H

Jenkins & pm2

1. 学习如何使用Jenkins搭建自动化部署

2. 学习如何使用pm2管理Node进程

十一、服务端运维0.5H

1. 性能监控&异常监控

2. 常见问题(磁盘溢出、内存泄露、请求波动)

3. devops(重启、置换、切流、清理)

1. 了解常见的监控指标(CPU、内存、磁盘、应用健康度、qpsrtslowqueryerror top10

2. 了解常用Linux命令ssh、topcdlstailvigrep,登录服务器查看日志排查异常

3. 故障排查手册

十二、异常排查0.5H

异常日志诊断的可视化

学习如何使用traceid 和 sls 搭建全流程调用链路日志可视化方案

十三、网络架构0.5H

负载均衡 & 分布式 & 应用拆分

学习如何使用Nginx + egg 分布式部署,以及按业务域拆分应用

十四、BFF的下一站1H

逻辑可视化编排 & 代码热更新

学习如何使用VM2搭建简易的代码热更新平台


预约内训 APPLY
前往提交您的需求,我们会及时与您联系
课程推荐 COURSE

企业服务热线:400-106-2080
电话:18519192882
投诉建议邮箱:venus@bailinzhe.com
合作邮箱:service@bailinzhe.com
总部地址:
北京市-丰台区-汽车博物馆东路6号3号楼1单元902-B73(园区)
全国客户服务中心:
天津市-南开区-桂苑路15号鑫茂集团鑫茂军民园1号楼A座802-803
公众号
百林哲咨询(北京)有限公司 京ICP备2022035414号-1