注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)軟件與程序設(shè)計Koa開發(fā):入門、進階與實戰(zhàn)

Koa開發(fā):入門、進階與實戰(zhàn)

Koa開發(fā):入門、進階與實戰(zhàn)

定 價:¥89.00

作 者: 劉江虹 著
出版社: 機械工業(yè)出版社
叢編項: Web開發(fā)技術(shù)叢書
標 簽: 暫缺

ISBN: 9787111390862 出版時間: 2022-02-01 包裝: 平裝
開本: 32開 頁數(shù): 256 字數(shù):  

內(nèi)容簡介

  這是一本能指導(dǎo)你零基礎(chǔ)掌握Koa完整知識體系并深入理解Node.js難點的著作,將帶領(lǐng)你在成為全棧工程師的道路上邁出堅實的一步。本書作者是字節(jié)跳動抖音電商團隊的前端架構(gòu)師,曾利用Koa和Node.js等技術(shù)從零開發(fā)過一款可對標Egg的BFF框架,并在生產(chǎn)環(huán)境中能支撐上千個線上服務(wù),在Koa和Node.js方面積累了豐富的經(jīng)驗。這本書以入門、進階、實戰(zhàn)為學(xué)習(xí)曲線,從基本用法、底層實現(xiàn)、常見場景解決方案、難點和重點等等角度對Koa和Node.js進行了詳細的講解。主要包括如下如下知識點: (1)Koa的基本概念和完整用法,構(gòu)建完整的Koa知識體系; (2)Koa的源碼實現(xiàn)和底層原理分析; (3)Koa在實際業(yè)務(wù)中遇到的問題及其解決方案; (4)從零搭建一個企業(yè)級BFF框架; (5)BFF框架的架構(gòu)設(shè)計、工程建設(shè)以及常見業(yè)務(wù)場景的解決方案; (6)Node.js中比較常見但難以理解的概念和知識點; (7)Node.js底層架構(gòu)解析。全書有大量實例和代碼,能幫助讀者在實踐中迅速從新人成長為高手。

作者簡介

  ●劉江虹,字節(jié)跳動抖音電商前端架構(gòu)師,擁有多年前端架構(gòu)工作經(jīng)驗。 獨立開發(fā)過一款可對標Egg的BFF企業(yè)級框架,支撐公司線上服務(wù)超過1000個。全棧前端技術(shù)專家,具備豐富的Node實戰(zhàn)經(jīng)驗。著有暢銷書《React.js實戰(zhàn)》。

圖書目錄

【第一部分 Koa基礎(chǔ)】

●第1章 Koa介紹2
1.1 Koa的誕生2
1.2 如何全面掌握Koa3
1.3 環(huán)境準備5
1.4 本章小結(jié)7

●第2章 Koa入門8
2.1 中間件的使用9
2.2 路由該怎么寫11
2.2.1 原生路由實現(xiàn)11
2.2.2 利用koa-router中間件實現(xiàn)12
2.3 靜態(tài)服務(wù)器14
2.3.1 koa-static中間件的使用15
2.3.2 如何實現(xiàn)一個靜態(tài)服務(wù)器16
2.4 模板引擎18
2.4.1 ejs模板的使用18
2.4.2 pug模板的使用20
2.5 處理請求數(shù)據(jù)21
2.6 Cookie和Session22
2.6.1 你真的了解Cookie嗎23
2.6.2 Session的秘密26
2.7 文件上傳34
2.8 跨域問題38
2.9 重寫URL43
2.10 優(yōu)雅的錯誤處理44
2.11 本章小結(jié)48

【第二部分 Koa進階】

●第3章 Koa源碼解析50
3.1 Koa目錄結(jié)構(gòu)50
3.2 Application都做了些什么52
3.2.1 Koa創(chuàng)建服務(wù)的原理52
3.2.2 中間件實現(xiàn)原理55
3.2.3 如何封裝ctx60
3.2.4 handleRequest和respond做了什么63
3.2.5 異常處理66
3.3 Context的核心實現(xiàn)68
3.3.1 委托機制68
3.3.2 Cookie的操作73
3.4 request的具體實現(xiàn)75
3.5 response的具體實現(xiàn)82
3.6 本章小結(jié)86

●第4章 Koa在業(yè)務(wù)場景中的應(yīng)用87
4.1 路由技巧87
4.1.1 路由分割88
4.1.2 文件路由91
4.2 用戶鑒權(quán)機制94
4.2.1 JWT鑒權(quán)94
4.2.2 單點登錄101
4.3 數(shù)據(jù)存儲115
4.3.1 數(shù)據(jù)庫的使用115
4.3.2 Elasticsearch的接入122
4.4 進程管理130
4.4.1 進程的概念130
4.4.2 創(chuàng)建多進程130
4.4.3 進程通信134
4.5 日志處理136
4.5.1 log4js牛刀小試136
4.5.2 日志級別137
4.5.3 日志分類139
4.5.4 日志分割141
4.6 本章小結(jié)142

【第三部分 Koa實戰(zhàn)】

●第5章 搭建一個企業(yè)級BFF框架144
5.1 搭建BFF框架的好處144
5.1.1 技術(shù)成長145
5.1.2 個人影響力145
5.2 搭建完整框架145
5.2.1 主工程搭建146
5.2.2 框架核心工程147
5.2.3 example工程148
5.2.4 本地開發(fā)調(diào)試150
5.3 環(huán)境區(qū)分152
5.3.1 環(huán)境配置152
5.3.2 整合配置153
5.4 服務(wù)啟動模塊154
5.4.1 hooks設(shè)計154
5.4.2 服務(wù)配置157
5.4.3 服務(wù)啟動模塊實現(xiàn)157
5.5 路由模塊159
5.5.1 路由模式配置159
5.5.2 文件路由159
5.5.3 koa-router路由162
5.6 靜態(tài)服務(wù)器模塊165
5.7 cors模塊167
5.7.1 跨域現(xiàn)象167
5.7.2 cors相關(guān)配置169
5.7.3 cors核心實現(xiàn)170
5.8 自定義中間件174
5.8.1 中間件加載順序174
5.8.2 加載自定義中間件175
5.9 登錄模塊177
5.9.1 鑒權(quán)模塊實現(xiàn)177
5.9.2 Cookie的配置179
5.10 制定模板180
5.10.1 加載模板180
5.10.2 自定義模板181
5.11 bodyparser模塊186
5.12 Redis模塊187
5.12.1 Redis配置188
5.12.2 Redis對象掛載188
5.12.3 使用Redis190
5.13 MySQL模塊191
5.13.1 數(shù)據(jù)庫配置191
5.13.2 數(shù)據(jù)庫連接192
5.13.3 數(shù)據(jù)庫操作193
5.14 Elasticsearch模塊194
5.14.1 連接配置194
5.14.2 掛載194
5.14.3 操作Elasticsearch195
5.15 日志模塊196
5.15.1 業(yè)務(wù)日志有哪些197
5.15.2 日志模塊實現(xiàn)197
5.15.3 具體使用場景200
5.16 單元測試203
5.16.1 mocha和chai203
5.16.2 編寫測試用例204
5.17 發(fā)布npm包206
5.18 本章小結(jié)207

【第四部分 Node】

●第6章 Node中的重要概念210
6.1 模塊機制210
6.1.1 CommonJS規(guī)范211
6.1.2 模塊加載原理212
6.2 Node中的I/O213
6.2.1 什么是無阻塞I/O213
6.2.2 無阻塞I/O原理213
6.2.3 事件循環(huán)214
6.3 進程與集群215
6.3.1 進程215
6.3.2 集群217
6.4 進程守護219
6.4.1 如何實現(xiàn)進程守護功能219
6.4.2 進程管理工具pm2221
6.5 Buffer和Stream225
6.6 垃圾回收原理227
6.6.1 V8內(nèi)存結(jié)構(gòu)227
6.6.2 垃圾回收機制229
6.7 本章小結(jié)230

●第7章 Node底層解析231
7.1 Node整體架構(gòu)231
7.2 深入理解Addon233
7.2.1 編譯工具node-gyp233
7.2.2 Node插件開發(fā)234
7.3 V8如何解析代碼237
7.3.1 V8的重要組成模塊237
7.3.2 AST是什么238
7.3.3 如何查看字節(jié)碼和匯編代碼239
7.4 libuv架構(gòu)240
7.5 本章小結(jié)242

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.afriseller.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號