Node.js实战:分布式系统中的后端服务开发

Node.js实战:分布式系统中的后端服务开发

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

本书主要介绍基于Node.js构建企业级后端服务,适用于拥有Node.js实战经验且熟练掌握JavaScript的开发人员。读完本书,你会了解在生产环境中运行Node.js服务所需的许多技术。

内容简介

Node.js是一个基于ChromeV8引擎的JavaScript运行时环境,使用了高效、轻量级的事件驱动、非阻塞I/O模型,让JavaScript运行在服务端的开发平台。

从初创公司到世界500强,大多数公司都喜欢使用Node.js来构建高性能的后端服务。工程师对Node.js有很高的评价,因为它有容易理解的API和大家熟悉的语法。在全球大的包存储库的强力支持下,Node.js的生态必将更加繁荣。

在本书中,作者证明了Node.js在构建可观察、可扩展且有弹性的服务方面与传统的企业平台一样适用。中高级Node.js开发人员会发现,他们可以将应用程序代码和现代服务的各个层面结合起来。

通过学习本书,你可以:

-了解为什么要运行多个相同的Node.js服务副本。

-根据业务场景选择恰当的协议。

-调整应用程序容器以便在生产环境中运行。

-跟踪分布式系统中的错误,以确定哪个服务出错。

-通过将工作转移给反向代理来简化应用程序代码并提高性能。

-构建数据面板来监视服务运行状况和数据吞吐量。

-了解在企业环境中操作时需要使用多种工具的原因。

作者简介

作者托马斯·亨特二世,已让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

关于作者

关于封面

Node.js实战:分布式系统中的后端服务开发是2021年由机械工业出版社华章分社出版,作者[美] 托马斯·亨特二世。

得书感谢您对《Node.js实战:分布式系统中的后端服务开发》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
Quarkus云原生微服务开发实战 电子书
以一个完整的实战应用的开发过程作为主线,介绍如何以Quarkus为框架来开发微服务架构的云原生应用。
SpringBoot+SpringCloud微服务开发实战 电子书
由浅入深,快速进阶,从理论到实战掌握Spring微服务开发核心功能和特性。
分布式系统设计实践 电子书
全面梳理分布式技术,详解原理及应用,研究大型系统案例。
计算机系统开发与优化实战 电子书
本书结合ARM、Linux和人工智能,讲述计算机系统软件和硬件开发。
AppInventor开发实战 电子书
App Inventor是MIT开发的流行的可视化编程工具,编程爱好者可以在短时间学会创建炫目的安卓手机应用。