Node.js微服務(wù)是一本Node.js教學(xué)書籍,由美國(guó)程序員大衛(wèi)岡薩雷斯David Gonzalez編著。本書內(nèi)容豐富翔實(shí),主要內(nèi)容要點(diǎn)為:理解Node.js模塊并掌握在與微服務(wù)打交道時(shí)的最佳實(shí)踐、將現(xiàn)有的單塊系統(tǒng)重新架構(gòu)成面向微服務(wù)的軟件、使用Seneca和Node.js構(gòu)建出健壯且可伸縮的微服務(wù)、對(duì)微服務(wù)進(jìn)行隔離測(cè)試從而創(chuàng)建出可靠的系統(tǒng)、使用PM2部署并管理微服務(wù)、監(jiān)控微服務(wù)的健康狀況(CPU、內(nèi)存以及I/O)等等,非常適合掌握服務(wù)端開發(fā)基本知識(shí)的Node.js開發(fā)者以及使用Java、C#等其他服務(wù)端技術(shù)棧并對(duì)微服務(wù)實(shí)踐感興趣的所有開發(fā)者。
內(nèi)容介紹
《Node.js微服務(wù)》對(duì)如何采用Node.js 及其生態(tài)工具進(jìn)行微服務(wù)開發(fā)的zui佳實(shí)踐做了全面的介紹,內(nèi)容包括對(duì)微服務(wù)架構(gòu)基本概念及設(shè)計(jì)原則的講解,以及如何采用Node.js 搭配Seneca、PM2 和Docker 等現(xiàn)代化工具來構(gòu)建、測(cè)試、監(jiān)控以及部署輕量級(jí)微服務(wù),同時(shí)也闡述了Node.js 在微服務(wù)實(shí)踐中所涉及的相關(guān)概念,并就微服務(wù)的優(yōu)缺點(diǎn)、文檔化、安全性以及可追溯性等主題進(jìn)行了探討。
章節(jié)目錄
微服務(wù)架構(gòu)1
微服務(wù)應(yīng)運(yùn)而生1
單塊軟件2
現(xiàn)實(shí)世界中的微服務(wù)2
面向微服務(wù)的架構(gòu)3
為什么面向微服務(wù)的架構(gòu)更好3
不足之處3
關(guān)鍵設(shè)計(jì)原則4
從組件到業(yè)務(wù)單元5
智能的服務(wù),愚蠢的通信管道7
去中心化8
技術(shù)對(duì)比10
多微才是足夠的微10
關(guān)鍵的好處11
彈性11
可伸縮性11
技術(shù)多樣性13
可替換性14
獨(dú)立性15
SOA與微服務(wù)的比較16
為什么選擇Node.js18
API聚合18
展望Node.js19
小結(jié)20
2 基于Seneca和PM2構(gòu)建Node.js微服務(wù)21
選擇Node.js的理由21
安裝Node.js、npm、Seneca和PM222
第一個(gè)程序——Hello World25
Node.js的線程模型27
模塊化組織的最佳實(shí)踐27
微服務(wù)框架Seneca32
實(shí)現(xiàn)控制反轉(zhuǎn)35
Seneca的模式匹配35
PM2——Node.js的任務(wù)執(zhí)行器46
單線程應(yīng)用及異常46
PM2——業(yè)界標(biāo)準(zhǔn)的任務(wù)執(zhí)行器47
小結(jié)52
3 從單塊軟件到微服務(wù)53
首先,我們擁有一個(gè)單塊軟件53
如何控制自然增長(zhǎng)54
多抽象才是過度抽象57
微服務(wù)的出現(xiàn)58
微服務(wù)的缺陷64
分割單塊軟件64
數(shù)據(jù)才是分割單塊軟件的主要問題65
組織架構(gòu)適配66
小結(jié)67
4 編寫你的第一個(gè)Node.js微服務(wù)69
微電子商務(wù)概覽69
商品管理服務(wù)——雙重核心71
獲取商品信息72
獲取指定類別的商品73
根據(jù)ID獲取商品74
添加商品75
刪除商品75
編輯商品76
整合各模塊76
集成Express與Seneca——如何創(chuàng)建REST API81
郵件服務(wù):一個(gè)常見的問題82
如何發(fā)送郵件82
接口定義83
設(shè)置Mandrill84
親自動(dòng)手在微服務(wù)中集成Mandrill86
回退策略91
訂單管理服務(wù)92
根據(jù)如何獲取非本地?cái)?shù)據(jù)來定義微服務(wù)93
訂單管理服務(wù)代碼95
UI——API聚合的產(chǎn)物99
前端微服務(wù)的必要性99
代碼99
服務(wù)降級(jí)——當(dāng)出現(xiàn)非災(zāi)難性故障時(shí)107
斷路器108
Seneca——一塊使我們工作變得更容易的拼圖109
Seneca和promise111
調(diào)試115
小結(jié)118
5 安全性和可追溯性119
基礎(chǔ)設(shè)施的邏輯安全119
利用SSH來對(duì)通信加密120
應(yīng)用程序安全122
保持安全方面的與時(shí)俱進(jìn)來應(yīng)對(duì)常見威脅123
有效的代碼審閱131
可追溯性132
日志132
請(qǐng)求追蹤134
審計(jì)135
HTTP狀態(tài)碼136
小結(jié)138
6 Node.js微服務(wù)的測(cè)試及文檔化140
功能性測(cè)試141
自動(dòng)化測(cè)試的金字塔142
采用Node.js測(cè)試微服務(wù)145
對(duì)微服務(wù)進(jìn)行文檔化175
采用Swagger對(duì)API進(jìn)行文檔化175
根據(jù)Swagger定義來生成項(xiàng)目182
小結(jié)184
7 微服務(wù)的監(jiān)控185
服務(wù)監(jiān)控185
采用PM2和Keymetrics進(jìn)行監(jiān)控186
吞吐量和性能的降級(jí)204
小結(jié)206
8 微服務(wù)的部署208
軟件部署的一些概念208
持續(xù)集成209
持續(xù)交付209
采用PM2進(jìn)行部署209
PM2中的“生態(tài)系統(tǒng)”210
采用PM2來部署微服務(wù)212
Docker——一種可用于軟件交付的容器213
組裝容器215
部署Node.js應(yīng)用221
將Docker容器的創(chuàng)建過程自動(dòng)化223
Node.js事件循環(huán)—入門容易精通難225
Node.js應(yīng)用的集群化228
為應(yīng)用增加負(fù)載均衡233
NGINX的健康檢查238
小結(jié)239
使用說明
1、下載并解壓,得出pdf文件
2、如果打不開本文件,請(qǐng)務(wù)必下載pdf閱讀器
3、安裝后,在打開解壓得出的pdf文件
4、雙擊進(jìn)行閱讀
- 下載地址
- 本地下載通道:
- 浙江電信下載
- 北京聯(lián)通下載
- 江蘇電信下載
- 廣東電信下載
有問題? 點(diǎn)此報(bào)錯(cuò)
發(fā)表評(píng)論
0條評(píng)論軟件排行榜
熱門推薦
- 得間免費(fèi)小說電腦版 v5.3.0.372.58M / 簡(jiǎn)體中文
- 有柿電腦版 v11.6.284.23M / 簡(jiǎn)體中文
- cnki全球?qū)W術(shù)快報(bào)電腦版 v1.0.1135.99M / 簡(jiǎn)體中文
- 南方Plus電腦版 v11.9.026.47M / 簡(jiǎn)體中文
- 網(wǎng)易新聞電腦版 v113.197.68M / 簡(jiǎn)體中文
- 數(shù)據(jù)挖掘?qū)д?官方版61.61M / 簡(jiǎn)體中文
- 未公開的Oracle數(shù)據(jù)庫秘密 迪貝斯pdf掃描版34.69M / 簡(jiǎn)體中文
- 本草綱目 5.34M / 簡(jiǎn)體中文
- docker入門實(shí)戰(zhàn) pdf完整版1.38M / 簡(jiǎn)體中文
- C++黑客編程揭秘與防范第2版 冀云pdf掃描版54.58M / 簡(jiǎn)體中文