资源名称:Node.js微服务

内容简介:

《Node.js微服务》对如何采用Node.js 及其生态工具进行微服务开发的最佳实践做了全面的介绍,内容包括对微服务架构基本概念及设计原则的讲解,以及如何采用Node.js 搭配Seneca、PM2 和Docker 等现代化工具来构建、测试、监控以及部署轻量级微服务,同时也阐述了Node.js 在微服务实践中所涉及的相关概念,并就微服务的优缺点、文档化、安全性以及可追溯性等主题进行了探讨。

《Node.js微服务》适合掌握服务端开发基本知识的Node.js 开发者以及使用Java、C#等其他服务端技术栈并对微服务实践感兴趣的所有开发者。

1.png

资源目录:

1 微服务架构 1

微服务应运而生 1

单块软件 2

现实世界中的微服务 2

面向微服务的架构 3

为什么面向微服务的架构更好 3

不足之处 3

关键设计原则 4

从组件到业务单元 5

智能的服务,愚蠢的通信管道 7

去中心化 8

技术对比 10

多微才是足够的微 10

关键的好处 11

弹性 11

可伸缩性 11

技术多样性 13

可替换性 14

独立性 15

SOA与微服务的比较 16

为什么选择Node.js 18

API聚合 18

展望Node.js 19

小结 20

2 基于Seneca和PM2构建Node.js微服务 21

选择Node.js的理由 21

安装Node.js、npm、Seneca和PM2 22

第一个程序——Hello World 25

Node.js的线程模型 27

模块化组织的最佳实践 27

微服务框架Seneca 32

实现控制反转 35

Seneca的模式匹配 35

PM2——Node.js的任务执行器 46

单线程应用及异常 46

PM2——业界标准的任务执行器 47

小结 52

3 从单块软件到微服务 53

首先,我们拥有一个单块软件 53

如何控制自然增长 54

多抽象才是过度抽象 57

微服务的出现 58

微服务的缺陷 64

分割单块软件 64

数据才是分割单块软件的主要问题 65

组织架构适配 66

小结 67

4 编写你的第一个Node.js微服务 69

微电子商务概览 69

商品管理服务——双重核心 71

获取商品信息 72

获取指定类别的商品 73

根据ID获取商品 74

添加商品 75

删除商品 75

编辑商品 76

整合各模块 76

集成Express与Seneca——如何创建REST API 81

邮件服务:一个常见的问题 82

如何发送邮件 82

接口定义 83

设置Mandrill 84

亲自动手在微服务中集成Mandrill 86

回退策略 91

订单管理服务 92

根据如何获取非本地数据来定义微服务 93

订单管理服务代码 95

UI——API聚合的产物 99

前端微服务的必要性 99

代码 99

服务降级——当出现非灾难性故障时 107

断路器 108

Seneca——一块使我们工作变得更容易的拼图 109

Seneca和promise 111

调试 115

小结 118

5 安全性和可追溯性 119

基础设施的逻辑安全 119

利用SSH来对通信加密 120

应用程序安全 122

保持安全方面的与时俱进来应对常见威胁 123

有效的代码审阅 131

可追溯性 132

日志 132

请求追踪 134

审计 135

HTTP状态码 136

小结 138

6 Node.js微服务的测试及文档化 140

功能性测试 141

自动化测试的金字塔 142

采用Node.js测试微服务 145

对微服务进行文档化 175

采用Swagger对API进行文档化 175

根据Swagger定义来生成项目 182

小结 184

7 微服务的监控 185

服务监控 185

采用PM2和Keymetrics进行监控 186

类人猿大军—来自Netflix的主动监控 201

吞吐量和性能的降级 204

小结 206

8 微服务的部署 208

软件部署的一些概念 208

持续集成 209

持续交付 209

采用PM2进行部署 209

PM2中的“生态系统” 210

采用PM2来部署微服务 212

Docker——一种可用于软件交付的容器 213

组装容器 215

部署Node.js应用 221

将Docker容器的创建过程自动化 223

Node.js事件循环—入门容易精通难 225

Node.js应用的集群化 228

为应用增加负载均衡 233

NGINX的健康检查 238

小结 239

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。

最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。 若排除这种情况,可在对应资源底部留言,或联络我们。

对于会员专享、整站源码、程序插件、网站模板、网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。

如果您已经成功付款但是网站没有弹出成功提示,请联系站长提供付款信息为您处理

源码素材属于虚拟商品,具有可复制性,可传播性,一旦授予,不接受任何形式的退款、换货要求。请您在购买获取之前确认好 是您所需要的资源