注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)基于Spring Boot實(shí)現(xiàn):Java分布式中間件開發(fā)入門與實(shí)戰(zhàn)

基于Spring Boot實(shí)現(xiàn):Java分布式中間件開發(fā)入門與實(shí)戰(zhàn)

基于Spring Boot實(shí)現(xiàn):Java分布式中間件開發(fā)入門與實(shí)戰(zhàn)

定 價(jià):¥99.00

作 者: 鐘林森 著
出版社: 人民郵電出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

購買這本書可以去


ISBN: 9787115535603 出版時(shí)間: 2020-06-01 包裝: 平裝
開本: 16開 頁數(shù): 568 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  本書主要是圍繞構(gòu)建分布式系統(tǒng)架構(gòu)的“中間件”開發(fā)實(shí)戰(zhàn)展開。開篇介紹了分布式系統(tǒng)架構(gòu)的相關(guān)知識(shí)要點(diǎn),包括其功能、作用以及演進(jìn)歷程,并由此引出了分布式中間件的相關(guān)介紹;緊接著是重點(diǎn)介紹了目前在實(shí)際生產(chǎn)環(huán)境中應(yīng)用比較廣泛的幾款Java中間件,包括緩存中間件Redis、消息中間件RabbitMQ、統(tǒng)一協(xié)調(diào)管理中間件ZooKeeper以及綜合中間件Redisson等,詳盡介紹了這幾款中間件的基本概念、典型應(yīng)用場(chǎng)景以及相應(yīng)的功能組件。值得一提的是,在介紹這幾款中間件的理論知識(shí)時(shí),本書還以微框架Spring Boot作為基礎(chǔ),整合相關(guān)中間件的依賴,結(jié)合作者的實(shí)際項(xiàng)目業(yè)務(wù)場(chǎng)景進(jìn)行代碼實(shí)戰(zhàn)。本書以代碼實(shí)戰(zhàn)為主,理論為輔,特別適用于初次接觸中間件的開發(fā)者;而對(duì)于有一定Java應(yīng)用開發(fā)經(jīng)驗(yàn)的工程師而言,通過本書也能了解中間件在構(gòu)建企業(yè)級(jí)應(yīng)用系統(tǒng)的過程中所提供的解決方案和思路。

作者簡(jiǎn)介

  鐘林森(修羅debug)曾在阿里游戲子公司擔(dān)任高級(jí)后端開發(fā)工程師,創(chuàng)辦過fightjava 程序員實(shí)戰(zhàn)基地,長(zhǎng)期扎根于一線編碼開發(fā)與系統(tǒng)架構(gòu)設(shè)計(jì),現(xiàn)為東英網(wǎng)絡(luò)科技有限公司創(chuàng)始合伙人。此外,作為CSDN博客專家、51CTO學(xué)院、CSDN 學(xué)院、網(wǎng)易云課堂等教育平臺(tái)知名講師,教授學(xué)生上萬人,擁有大量原創(chuàng)博客,博客訪問量達(dá)百萬人次。追求技術(shù),熱愛分享,相信技術(shù)改變生活,技術(shù)成就夢(mèng)想,一直在不斷地學(xué)習(xí)和積累新知識(shí)。

圖書目錄

走進(jìn)分布式中間件 01
1.1 分布式系統(tǒng)概述 01
1.1.1 分布式系統(tǒng)定義 02
1.1.2 分布式系統(tǒng)發(fā)展歷程 02
1.1.3 分布式系統(tǒng)特性 05
1.1.4 分布式系統(tǒng)常見問題 06
1.2 分布式中間件概述 06
1.2.1 分布式中間件簡(jiǎn)介 06
1.2.2 常見中間件介紹 07
1.3 本書核心知識(shí)要點(diǎn) 08
1.4 本書實(shí)戰(zhàn)要求與建議 09

搭建Spring Boot微服務(wù)項(xiàng)目 11
2.1 Spring Boot概述 11
2.1.1 什么是Spring Boot 11
2.1.2 Spring Boot的優(yōu)勢(shì) 12
2.1.3 Spring Boot的特性 13
2.2 搭建規(guī)范與搭建流程 14
2.2.1 Spring Boot項(xiàng)目的搭建規(guī)范 14
2.2.2 Spring Boot項(xiàng)目的搭建流程 15
2.2.3 寫個(gè)“Hello World”吧 30
2.3 總結(jié) 33

緩存中間件Redis 34
3.1 Redis概述與典型應(yīng)用場(chǎng)景介紹 34
3.2 Redis的使用 36
3.2.1 快速安裝Redis 36
3.2.2 在Windows環(huán)境使用Redis 38
3.2.3 Spring Boot項(xiàng)目整合Redis 41
3.2.4 Redis自定義注入Bean組件配置 42
3.2.5 RedisTemplate實(shí)戰(zhàn) 44
3.2.6 StringRedisTemplate實(shí)戰(zhàn) 49
3.3 Redis常見數(shù)據(jù)類型實(shí)戰(zhàn) 52
3.3.1 字符串 52
3.3.2 列表 55
3.3.3 集合 57
3.3.4 有序集合 58
3.3.5 哈希存儲(chǔ) 61
3.3.6 Key失效與判斷是否存在 65
3.4 Redis實(shí)戰(zhàn)場(chǎng)景之緩存穿透 68
3.4.1 什么是緩存穿透 68
3.4.2 緩存穿透的解決方案 69
3.4.3 實(shí)戰(zhàn)過程 70
3.4.4 其他典型的問題介紹 79
3.5 總結(jié) 80

Redis典型應(yīng)用場(chǎng)景實(shí)戰(zhàn)之搶紅包系統(tǒng) 81
4.1 整體業(yè)務(wù)流程介紹 81
4.1.1 搶紅包系統(tǒng)業(yè)務(wù)流程 82
4.1.2 業(yè)務(wù)流程分析 82
4.1.3 業(yè)務(wù)模塊劃分 84
4.2 數(shù)據(jù)庫設(shè)計(jì)與環(huán)境搭建 85
4.2.1 數(shù)據(jù)庫設(shè)計(jì) 85
4.2.2 開發(fā)環(huán)境搭建 88
4.2.3 開發(fā)流程介紹 103
4.3 “紅包金額”隨機(jī)生成算法實(shí)戰(zhàn) 107
4.3.1 隨機(jī)數(shù)算法 108
4.3.2 紅包隨機(jī)金額生成算法要求 109
4.3.3 二倍均值法簡(jiǎn)介 109
4.3.4 紅包隨機(jī)金額生成算法實(shí)戰(zhàn) 111
4.3.5 紅包隨機(jī)金額生成算法自測(cè) 113
4.4 “發(fā)紅包”模塊實(shí)戰(zhàn) 115
4.4.1 業(yè)務(wù)模塊分析 115
4.4.2 整體流程實(shí)戰(zhàn) 117
4.4.3 業(yè)務(wù)模塊自測(cè) 127
4.5 “搶紅包”模塊實(shí)戰(zhàn) 129
4.5.1 業(yè)務(wù)模塊分析 129
4.5.2 整體流程實(shí)戰(zhàn) 130
4.5.3 業(yè)務(wù)模塊自測(cè) 135
4.5.4 小結(jié) 139
4.6 JMeter壓測(cè)高并發(fā)搶紅包 140
4.7 問題分析與優(yōu)化方案實(shí)戰(zhàn) 146
4.7.1 問題分析 147
4.7.2 優(yōu)化方案介紹 148
4.7.3 優(yōu)化方案之Redis分布式鎖實(shí)戰(zhàn) 148
4.7.4 不足之處 152
4.8 總結(jié) 153

消息中間件RabbitMQ 154
5.1 RabbitMQ概述 154
5.1.1 認(rèn)識(shí)RabbitMQ 155
5.1.2 典型應(yīng)用場(chǎng)景介紹 156
5.1.3 RabbitMQ后端控制臺(tái)介紹 162
5.1.4 基于Spring的事件驅(qū)動(dòng)模型實(shí)戰(zhàn) 164
5.2 Spring Boot項(xiàng)目整合RabbitMQ 169
5.2.1 RabbitMQ相關(guān)詞匯介紹 170
5.2.2 Spring Boot項(xiàng)目整合RabbitMQ 171
5.2.3 自定義注入配置Bean相關(guān)組件 172
5.2.4 RabbitMQ發(fā)送和接收消息實(shí)戰(zhàn) 177
5.2.5 其他發(fā)送和接收消息方式實(shí)戰(zhàn) 184
5.3 RabbitMQ多種消息模型實(shí)戰(zhàn) 191
5.3.1 基于FanoutExchange的消息模型實(shí)戰(zhàn) 191
5.3.2 基于DirectExchange的消息模型實(shí)戰(zhàn) 201
5.3.3 基于TopicExchange的消息模型實(shí)戰(zhàn) 209
5.4 RabbitMQ確認(rèn)消費(fèi)機(jī)制 218
5.4.1 消息高可用和確認(rèn)消費(fèi)機(jī)制 218
5.4.2 常見確認(rèn)消費(fèi)模式介紹 221
5.4.3 基于自動(dòng)確認(rèn)消費(fèi)模式實(shí)戰(zhàn) 223
5.4.4 基于手動(dòng)確認(rèn)消費(fèi)模式實(shí)戰(zhàn) 232
5.5 典型應(yīng)用場(chǎng)景實(shí)戰(zhàn)之用戶登錄成功寫日志 240
5.5.1 整體業(yè)務(wù)流程介紹與分析 241
5.5.2 數(shù)據(jù)庫設(shè)計(jì) 242
5.5.3 開發(fā)環(huán)境搭建 254
5.5.4 基于TopicExchange構(gòu)建日志消息模型 259
5.5.5 異步發(fā)送和接收登錄日志消息實(shí)戰(zhàn) 261
5.5.6 整體業(yè)務(wù)模塊自測(cè)實(shí)戰(zhàn) 267
5.6 總結(jié) 270

死信隊(duì)列實(shí)戰(zhàn) 271
6.1 死信隊(duì)列概述 271
6.1.1 死信隊(duì)列簡(jiǎn)介與作用 271
6.1.2 典型應(yīng)用場(chǎng)景介紹 274
6.2 RabbitMQ死信隊(duì)列實(shí)戰(zhàn) 275
6.2.1 死信隊(duì)列專有詞匯介紹 276
6.2.2 死信隊(duì)列消息模型實(shí)戰(zhàn) 277
6.2.3 死信隊(duì)列延遲發(fā)送和接收消息實(shí)戰(zhàn) 284
6.3 典型應(yīng)用場(chǎng)景實(shí)戰(zhàn)之商城平臺(tái)訂單支付超時(shí) 292
6.3.1 整體業(yè)務(wù)場(chǎng)景介紹 292
6.3.2 整體業(yè)務(wù)流程分析 294
6.3.3 數(shù)據(jù)庫設(shè)計(jì) 294
6.3.4 構(gòu)建RabbitMQ死信隊(duì)列消息模型 307
6.3.5 Controller層開發(fā)生成并失效用戶下單功能 312
6.3.6 “用戶下單支付超時(shí)”延遲發(fā)送和接收實(shí)戰(zhàn) 320
6.3.7 “用戶下單支付超時(shí)”整體功能自測(cè) 326
6.4 總結(jié) 331

分布式鎖實(shí)戰(zhàn) 333
7.1 分布式鎖概述 333
7.1.1 鎖機(jī)制 334
7.1.2 分布式鎖登場(chǎng) 342
7.1.3 典型應(yīng)用場(chǎng)景介紹 344
7.1.4 小結(jié) 347
7.2 基于數(shù)據(jù)庫實(shí)現(xiàn)分布式鎖 347
7.2.1 樂觀鎖簡(jiǎn)介 347
7.2.2 樂觀鎖實(shí)戰(zhàn) 349
7.2.3 JMeter高并發(fā)測(cè)試樂觀鎖 364
7.2.4 悲觀鎖簡(jiǎn)介 371
7.2.5 悲觀鎖實(shí)戰(zhàn) 372
7.2.6 JMeter高并發(fā)測(cè)試悲觀鎖 376
7.2.7 小結(jié) 377
7.3 基于Redis實(shí)現(xiàn)分布式鎖 378
7.3.1 Redis溫故而知新 378
7.3.2 分布式鎖的實(shí)現(xiàn)流程與原理分析 380
7.3.3 基于Redis實(shí)戰(zhàn)實(shí)現(xiàn)分布式鎖 381
7.3.4 JMeter高并發(fā)測(cè)試 394
7.3.5 小結(jié) 398
7.4 基于ZooKeeper實(shí)現(xiàn)分布式鎖 399
7.4.1 ZooKeeper簡(jiǎn)介與作用 399
7.4.2 分布式鎖的實(shí)現(xiàn)流程與原理分析 401
7.4.3 Spring Boot整合ZooKeeper 403
7.4.4 基于ZooKeeper實(shí)戰(zhàn)實(shí)現(xiàn)分布式鎖 407
7.4.5 JMeter高并發(fā)測(cè)試 410
7.4.6 小結(jié) 412
7.5 典型應(yīng)用場(chǎng)景之書籍搶購模塊設(shè)計(jì)與實(shí)戰(zhàn) 412
7.5.1 整體業(yè)務(wù)流程介紹與分析 412
7.5.2 數(shù)據(jù)表設(shè)計(jì)與用例設(shè)計(jì) 414
7.5.3 書籍搶購核心業(yè)務(wù)邏輯開發(fā)實(shí)戰(zhàn) 420
7.5.4 Jmeter重現(xiàn)“庫存超賣”的問題 426
7.5.5 基于分布式鎖實(shí)戰(zhàn)解決相關(guān)問題 427
7.5.6 小結(jié) 433
7.6 總結(jié) 434
綜合中間件Redisson 435
8.1 Redisson概述 436
8.1.1 Redisson簡(jiǎn)介與作用 436
8.1.2 Redisson的功能特性 438
8.1.3 典型應(yīng)用場(chǎng)景介紹之布隆過濾器與主題 439
8.1.4 典型應(yīng)用場(chǎng)景介紹之延遲隊(duì)列與分布式鎖 444
8.1.5 Spring Boot整合Redisson 447
8.2 Redisson常見功能組件實(shí)戰(zhàn) 453
8.2.1 布隆過濾器 453
8.2.2 發(fā)布-訂閱式主題 458
8.2.3 數(shù)據(jù)類型之映射Map 466
8.2.4 數(shù)據(jù)類型之集合Set 473
8.2.5 隊(duì)列Queue實(shí)戰(zhàn) 480
8.2.6 死信隊(duì)列實(shí)戰(zhàn) 486
8.2.7 延遲隊(duì)列實(shí)戰(zhàn) 496
8.3 分布式鎖實(shí)戰(zhàn) 503
8.3.1 重溫分布式鎖 503
8.3.2 分布式鎖之一次性實(shí)戰(zhàn) 505
8.3.3 分布式鎖之可重入實(shí)戰(zhàn) 511
8.4 總結(jié) 518

Redisson典型應(yīng)用場(chǎng)景實(shí)戰(zhàn)之高性能點(diǎn)贊 520
9.1 整體業(yè)務(wù)流程介紹與分析 520
9.1.1 業(yè)務(wù)背景介紹 521
9.1.2 業(yè)務(wù)流程介紹與分析 522
9.1.3 業(yè)務(wù)模塊劃分與數(shù)據(jù)庫設(shè)計(jì) 525
9.2 “點(diǎn)贊”與“取消點(diǎn)贊”操作模塊實(shí)戰(zhàn) 533
9.2.1 “點(diǎn)贊”與“取消點(diǎn)贊”業(yè)務(wù)流程分析 533
9.2.2 Controller層接收請(qǐng)求信息 536
9.2.3 Service層插入、更新并緩存記錄信息 540
9.2.4 業(yè)務(wù)模塊自測(cè) 552
9.3 “點(diǎn)贊排行榜”業(yè)務(wù)模塊實(shí)戰(zhàn) 554
9.3.1 “點(diǎn)贊排行榜”業(yè)務(wù)流程分析 555
9.3.2 接收前端請(qǐng)求并觸發(fā)緩存點(diǎn)贊排行榜 556
9.3.3 業(yè)務(wù)模塊自測(cè) 560
9.4 總結(jié) 564

總結(jié)與回顧 566

本目錄推薦

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