Node.js实战
分布式系统中的后端服务开发
¥89.40
作品简介
Node.js是一个基于ChromeV8引擎的JavaScript运行时环境,使用了高效、轻量级的事件驱动、非阻塞I/O模型,让JavaScript运行在服务端的开发平台。本书主要介绍基于Node.js构建企业级后端服务,内容涉及Node.js和JavaScript的特性介绍、通信协议、扩展、可观测性、Docker容器、部署、容器编排、应用程序容错、分布式单元、应用程序安全性等内容。本书不是面向Node.js新手的,适用于拥有Node.js实战经验且熟练掌握JavaScript的开发人员。读完本书,你会了解在生产环境中运行Node.js服务所需的许多技术。
托马斯·亨特二世(Thomas HunterⅡ),已让Node.js在数十个企业中大放光彩,他现在在为一家致力于让Node.js更加安全的公司工作。他曾在数个关于Node.js和JavaScript的会议上发表讲话,并获得了JSNSD/JSNAD认证,同时他还是NodeSchool SF的组织者之一。
作品目录
O'Reilly Media, Inc.介绍
序言
前言
第1章 为什么要用分布式
1.1 JavaScript的单线程特性
1.2 Node.js速览
1.3 Node.js的事件循环
1.4 示例应用程序
第2章 协议
2.1 使用HTTP请求和响应
2.2 使用GraphQL构建API外观
2.3 使用gRPC进行RPC通信
第3章 扩展
3.1 集群模块
3.2 使用HAProxy实现反向代理
3.3 SLA和负载测试
第4章 可观测性
4.1 运行环境
4.2 ELK与日志
4.3 Graphite、StatsD和Grafana度量指标
4.4 使用Zipkin进行分布式请求跟踪
4.5 运行状况检查
4.6 使用Cabot进行报警
第5章 容器
5.1 Docker简介
5.2 容器化Node.js服务
5.3 使用Docker Compose进行基本编排
5.4 内部Docker注册表
第6章 部署
6.1 使用Travis CI构建流水线
6.2 自动化测试
6.3 部署Heroku
6.4 模块、包和SemVer
6.5 内部npm注册表
第7章 容器编排
7.1 Kubernetes简介
7.2 启动
7.3 部署应用程序
7.4 服务发现
7.5 修改部署
第8章 弹性
8.1 Node.js进程的终止
8.2 构建无状态服务
8.3 使用Memcached构建外部缓存
8.4 数据库连接的弹性
8.5 使用Knex进行Schema迁移
8.6 幂等性和消息传递弹性
8.7 弹性测试
第9章 分布式基元
9.1 ID生成问题
9.2 Redis简介
9.3 Redis操作
9.4 寻求原子性
9.5 事务
9.6 Lua脚本
第10章 安全性
10.1 繁杂的代码库
10.2 认识攻击面
10.3 应用程序配置
10.4 升级依赖项
10.5 升级Node.js
附录A 安装HAProxy
附录B 安装Docker
附录C 安装Minikube和Kubectl
关于作者
关于封面
载入中