分布式訊息中間件實踐筆記
首先,這份分布式訊息中間件實踐筆記是以Java語言撰寫,
訊息中間件是分布式系統中的重要組件,在實際作業中常用訊息中間件進行系統間資料交換,從而解決應用解耦、異步訊息、流量削峰等問題,實作高性能、高可用、可伸縮和最終一致性架構, 目前市面上可供選擇的訊息中間件有RabbitMQ、ActiveMQ、 Kafka、 RocketMQ、 ZeroMQ、 MetaMQ 等,
這份筆記結合作者近年來在實際專案中使用訊息中間件的經歷和踩過的一些坑總結整理而成,主要介紹訊息中間件使用的背景、基本概念,以及常用的四種訊息中間件產品在各個業務場景中的使用案例,作為案例介紹,雖然不能對各種訊息中間件產品的所有特性做詳細說明,但是希望讀者可以通過每章中的案例討論和實踐建議得到啟發,為在實際作業中進行產品選型、業務場景方案制定、性能調整等提供思路,
下面會為大家分享分布式訊息中間件實踐筆記+分布式核心原理決議筆記,為了不影響大家的閱讀體驗,免費的獲取方式放在了文末!
訊息佇列
系統間通信技術介紹
為何要用訊息佇列
訊息佇列的功能特點
設計一個簡單的訊息佇列
- 訊息處理中心
- 客戶端訪問

訊息協議
AMQP
MQTT
STOMP
XMPP
JMS

RabbitMQ
簡介
工程實體
- Java 訪問RabbitMQ實體
- Spring 整合RabbitMQ
- 基于RabbitMQ的異步處理
- 基于RabbitMQ的訊息推送

RabbitMQ實踐建議
- 虛擬主機
- 訊息保存
- 訊息確認模式
- 消費者應答
- 流控機制
- 通道
- 總結

ActiveMQ
簡介
工程實體
- Java 訪問ActiveMQ實體
- Spring 整合ActiveMQ
- 基于ActiveMQ的訊息推送
- 基于ActiveMQ的分布式事務

ActiveMQ實踐建議
- 訊息轉發模式
- 訊息積壓
- 訊息事務
- 訊息應答模式
- 訊息發送優化
- 訊息消費優化
- 訊息協議
- 訊息持久化

Kafka
簡介
工程實體
- Java 訪問Kafka實體
- Spring 整合Kafka
- 基于Kafka的用戶行為資料采集
- 基于Kafka的日志收集
- 基于Kafka的流量削峰

Kafka實踐建議
- 磁區
- 復制
- 訊息發送
- 消費者組
- 消費偏移量

RocketMQ
簡介
工程實體
- Java訪問RocketMQ實體
- Spring整合RocketMQ
- 基于RocketMQ的訊息順序處理
- 基于RocketMQ的分布式事務

RocketMQ實踐建議
- 訊息重試
- 訊息重復
- 集群
- 順序訊息
- 定時訊息
- 批量發送訊息
- 事務訊息

分布式核心原理決議筆記
按照不同維度,分布式系統的指標可以分為性能、資源占用、可用性、可擴展性這四大類,我們自然希望自己的系統,是高性能、高可用、高擴展和低資源占用的,但考慮到硬體成本、開發效率等因素,必須要在設計不同的系統、業務時有所取舍,
所以,我又和你分析了典型的電商、loT、 電信、HPC (高性能計算)、大資料、 云計算、區塊鏈等業務或系統的不同訴求,進而得出了系統設計者需要關注哪些指標,你在設計其他型別的系統時,可以按照這個思路進行取舍,
分布式協調與同步
分布式互斥
分布式選舉
分布式共識
分布式事務
分布式鎖
分布式技術是如何引爆人工智能的?


分布式資源管理與負載調度
分布式體系結構一集中式結構
分布式體系結構一非集中式結構
分布式調度架構一單體調度
分布式調度架構一兩層調度
分布式調度架構一共享狀態調度
分布式事務與分布式鎖相關問題


分布式計算技術
分布式計算模式一MR
分布式計算模式一Stream
分布式計算模式一Actor
分布式計算模式一流水線


分布式通信技術
分布式通信一遠程呼叫
分布式通信一發布訂閱
分布式通信一訊息佇列
分布式體系架構與分布式計算相關問題


分布式資料存盤
CAP理論
分布式資料存盤系統一三要素
資料分布方式一哈希與一致性哈希
分布式資料復制技術
分布式資料—快取技術


分布式高可靠
分布式高可靠一負載均衡
分布式高可靠一流量控制
分布式高可用一故障隔離
分布式高可用—故障恢復
如何判斷并解決網路磁區問題?


總結
訊息佇列在大型分布式系統中具有豐富的應用場景,例如,系統間需要解耦,一個系統發布訊息,多個系統訂閱消費訊息,訊息生產者并不需要知道消費方是誰,在高并發場景下,比如秒殺活動,短時間內會發起大量請求,為應對瞬時請求,如果部署大量的機器來處理請求,秒殺活動結束后流量很低,則會浪費很多資源,增加成本,而使用訊息佇列的堆積能力,先保存請求,再勻速處理請求,則會很好地解決此類問題,筆記中從不同角度細致地講解了各種訊息中間件,讀者可以結合場景,從高可用性、可擴展性、伸縮性、訊息堆積能力等方面選擇符合自己需求的中間件,
100%免費獲取方式:轉發這篇文章+關注我,然后掃碼獲取!

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/204355.html
標籤:java
