kafka菜鳥教程 如何使用消息隊列解決分布式事務?
如何使用消息隊列解決分布式事務?有兩種選擇。Scheme 1 Local message transaction table生產者需要添加一個事務消息表。具體步驟如下:[1。生產者執行業務邏輯并將事務
如何使用消息隊列解決分布式事務?
有兩種選擇。
Scheme 1 Local message transaction table
生產者需要添加一個事務消息表。具體步驟如下:[1。生產者執行業務邏輯并將事務記錄插入到消息表中。這兩個操作在一個本地事務中
2。啟動后臺線程定期輪詢消息表并將消息發送到消息隊列
3。刪除消息表中的消息,直到發送成功。
方案2需要消息隊列支持,業務端提供回溯接口
1。生產端將準備好的消息發送到消息隊列
2。在本地事務中,業務邏輯
3。根據執行結果確認或取消準備好的消息
4。消息隊列將確保準備好的消息被確認或取消,并且消息隊列將不斷地向生產端請求執行結果,這要求生產端提供類似的回調函數。
在方案2中,消息隊列取代了方案1中的消息表和后臺線程輪詢功能,但并非所有消息隊列都支持此功能。支持Rocketmq。
方案1的開發工作量大,外部依賴性小
方案2的開發工作量小,但依賴于特定的消息隊列。
日志采集系統flume和kafka有什么區別及聯系?
flume和Kafka的一些功能是相同的,但總的來說,它們是完全不同的;它們的場景是不同的,但它們可以一起使用。
簡而言之,flume是一個分布式日志收集系統,它從各種服務器收集日志并將其傳輸到指定的位置,如HDFS。
Kafka是一個分布式消息中間件,有自己的存儲,提供推拉數據訪問功能。
整個過程如下:
登錄服務器<--flume-->kafka-->hdfs-->離線計算
登錄服務器<--flume-->kafka-->storm
希望我的回答能對您有所幫助
JAVA面試如何保證消息不被重復消費?如何保證消息消費的冪等性?
我沒事,來這里玩,開始在各種網絡上尋找技術信息,之后以“頭條”為主。從尋找信息到交朋友。因為我覺得事情落后于時代,有人認為,是因為自己水平不高。只是在心里想,無法實現現實
!