微服務實戰(zhàn)(Dubbox +Spring Boot+Docker)
定 價:29.8 元
叢書名:新技術技能人才培養(yǎng)系列教程
- 作者:肖睿 吳剛山 黃興
- 出版時間:2018/7/1
- ISBN:9787115486691
- 出 版 社:人民郵電出版社
- 中圖法分類:TP368.5
- 頁碼:
- 紙張:膠版紙
- 版次:
- 開本:16開
在這個凡事皆互聯(lián)的時代,越來越多的人和物成為互聯(lián)網(wǎng)上的節(jié)點,不斷擴充著互聯(lián)網(wǎng)這張大網(wǎng)的邊界。節(jié)點即價值,更多的節(jié)點意味著更大的價值。那么如何去承載更多的節(jié)點就成為IT從業(yè)人士首要解決的問題。本書圍繞秒殺搶購應用場景,對當下流行的Dubbox+Spring Boot+Docker微服務架構解決方案進行講解。主要內(nèi)容包括微服務架構介紹、Dubbox原理及運用、使用Spring Boot實現(xiàn)微服務、使用ActiveMQ+Redis承載高并發(fā)流量、使用ActiveMQ實現(xiàn)分布式事務、分布式下的第三方接入等。
本書以項目為驅(qū)動,引領讀者對相關技術進行實踐性學習。同時為了提升讀者對相關技術的實際運用能力,本書將實際開發(fā)經(jīng)驗注入到整個項目開發(fā)周期中,使用目前較為流行的Dubbox+Spring Boot+Docker微服務架構實現(xiàn)“雙11”搶購項目。
為保證*學習效果,本書配以完善的學習資料和支持服務,包括視頻教程、案例素材下載、學習交流社區(qū)、討論組等終身學習內(nèi)容,為開發(fā)者帶來全方位的學習體驗。
1、選取知識點核心實用,以互聯(lián)網(wǎng)+實現(xiàn)終身學習
2、以企業(yè)需求為設計導向,以任務驅(qū)動為講解方式
3、以案例為主線組織知識點,以實戰(zhàn)項目來提升技術
4、充分考慮學習者的認知曲線,由淺入深,邊講邊練
北大課工場是專注互聯(lián)網(wǎng)教育的生態(tài)平臺,針對行業(yè)的快速變化,建設并維護了中國和北美的327人一線大咖團隊,由他們直接參與課程研發(fā)和提供授課服務。大咖團隊不乏來自BAT等國內(nèi)知名互聯(lián)網(wǎng)技術公司的技術專家、技術大牛、CTO和CEO,其中絕大部分擁有超過10年的技術研發(fā)實戰(zhàn)經(jīng)驗,這樣可以讓學員拿到互聯(lián)網(wǎng)一線企業(yè)項目進行實戰(zhàn)化練習,真正起到“名師出高徒”的傳幫帶效應。同時課工場也為高校、企業(yè)、行業(yè)提供教育技術賦能,依托Transform只能教育生態(tài)平臺,打造智慧校園、企業(yè)大學、行業(yè)培訓的教育場景,提供一站式教育解決方案。
序言
前言
第 1章 架構設計 1
任務1 了解秒殺搶購業(yè)務場景 2
1.1.1 秒殺搶購業(yè)務場景介紹 2
1.1.2 秒殺搶購業(yè)務需求分析 3
任務2 架構設計 3
1.2.1 業(yè)務架構設計 3
1.2.2 應用架構設計 4
1.2.3 技術架構設計 4
1.2.4 部署架構設計 4
本章總結 6
本章練習 6
第 2章 微服務架構 7
任務1 了解軟件行業(yè)分類并掌握軟件架構分類 8
2.1.1 軟件行業(yè)分類 8
2.1.2 軟件架構分類 8
任務2 掌握微服務架構的相關概念 11
2.2.1 Provider和Consumer 12
2.2.2 RPC和RESTful 12
2.2.3 分布式 13
2.2.4 集群 13
任務3 熟悉常見微服務架構并掌握微服務架構設計原則 13
2.3.1 常見微服務架構 13
2.3.2 微服務架構設計原則 14
2.3.3 微服務架構解決方案 14
本章總結 14
本章練習 14
第3章 Docker環(huán)境搭建 15
任務1 了解Docker相關概念 16
3.1.1 Docker和虛擬機 16
3.1.2 Docker Container 17
3.1.3 Docker Image 18
3.1.4 Docker Registry 18
3.1.5 Docker運行原理 19
3.1.6 Docker容器IP和端口映射 19
3.1.7 Docker集群 20
任務2 掌握Docker安裝步驟 20
任務3 掌握Docker常用命令 21
3.3.1 Docker鏡像操作命令 21
3.3.2 Docker容器操作命令 23
任務4 了解Docker可視化 27
任務5 使用Docker搭建項目環(huán)境 27
3.5.1 環(huán)境要求 28
3.5.2 搭建步驟 28
3.5.3 相關配置和檢查 29
3.5.4 測試服務 33
3.5.5 生成鏡像 34
3.5.6 發(fā)布服務 34
本章總結 36
本章練習 36
第4章 Spring Boot初體驗 37
任務1 掌握Spring Boot的定義和作用 38
4.1.1 定義 38
4.1.2 作用 38
任務2 掌握Spring Boot項目環(huán)境搭建的步驟 39
4.2.1 環(huán)境要求 39
4.2.2 環(huán)境搭建 39
4.2.3 核心組件 41
任務3 整合MyBatis和Redis 43
4.3.1 整合MyBatis 43
4.3.2 整合Redis 46
任務4 自定義Spring Boot的自動配置 48
本章總結 51
本章練習 51
第5章 使用Dubbox+Spring Boot搭建微服務架構 52
任務1 了解Dubbox的概念和運行環(huán)境 53
5.1.1 Dubbox介紹 53
5.1.2 依賴環(huán)境介紹 53
任務2 掌握Dubbox的運行原理 54
任務3 掌握Dubbox的搭建步驟 55
任務4 使用Dubbox實現(xiàn)提供者和消費者 58
5.4.1 創(chuàng)建通用接口項目 58
5.4.2 Dubbox實現(xiàn)提供者 59
5.4.3 Dubbox實現(xiàn)消費者 61
任務5 搭建“雙11”搶購項目微服務架構 64
本章總結 64
本章練習 64
第6章 基于Redis+ActiveMQ實現(xiàn)高并發(fā)訪問 65
任務1 初識分布式鎖并使用Redis實現(xiàn)分布式鎖 66
6.1.1 分布式鎖的概念 66
6.1.2 使用Redis實現(xiàn)分布式鎖 66
任務2 初識消息中間件 68
6.2.1 消息中間件概念 68
6.2.2 消息中間件作用 68
6.2.3 常見消息中間件 70
任務3 掌握消息中間件ActiveMQ的使用 70
6.3.1 安裝與配置 70
6.3.2 使用Spring Boot整合ActiveMQ 71
任務4 在“雙11”搶購項目中應用消息隊列 75
6.4.1 緩存搶購請求 76
6.4.2 控制庫存事務 76
本章總結 77
本章練習 77
第7章 分布式下的第三方接入 78
任務1 實現(xiàn)分布式下的微信登錄功能 79
7.1.1 接入背景介紹 79
7.1.2 準備工作 79
7.1.3 授權流程說明 80
7.1.4 實現(xiàn)步驟及參數(shù)解析 80
7.1.5 編碼實現(xiàn) 83
7.1.6 注意事項 85
任務2 實現(xiàn)分布式下的微信支付功能 87
7.2.1 微信支付功能介紹 87
7.2.2 微信支付申請流程 87
7.2.3 微信支付類型 87
7.2.4 微信掃碼支付 88
7.2.5 相關參數(shù)獲取 89
7.2.6 微信支付安全規(guī)范 90
7.2.7 微信掃碼支付開發(fā)步驟 90
7.2.8 微信掃碼支付前端設計 95
任務3 實現(xiàn)分布式下的支付寶支付功能 97
7.3.1 接入背景 97
7.3.2 開發(fā)步驟 97
本章總結 109
本章練習 109
第8章 高并發(fā)測試 110
任務1 了解壓力測試相關概念 111
8.1.1 高并發(fā)壓力測試 111
8.1.2 常見壓力測試工具 111
任務2 使用JMeter進行高并發(fā)測試 112
8.2.1 下載并安裝JMeter 112
8.2.2 使用JMeter進行“雙11”搶購項目測試 113
任務3 使用JMeter生成測試報告 119
8.3.1 生成測試報告 119
8.3.2 分析測試報告 120
本章總結 123
本章練習 123