原创 微服務註冊中心註冊表與hashcode實現golang版

背景 基於負載均衡的服務調用 基於負載均衡的服務相互調用指的是通過基於Lvs、Haproxy、Nginx等負載均衡軟件來構建一個負載均衡服務,所有的服務調用都通過負載均衡器 從負載均衡的這種模式下其實有兩個主要的問題: 一是中心化,整個系統

原创 Kafka兩級調度實現分佈式協調微服務任務分配Golang版

背景 基於Kafka消息隊列的兩級協調調度架構 Kafka內部爲了協調內部的consumer和kafka connector的工作實現了一個複製協議, 主要工作分爲兩個步驟: 通過worker(consumer或connect)獲取自身

原创 基於2PC和延遲更新完成分佈式消息隊列多條事務Golang版本

背景 分佈式多消息事務問題 在消息隊列使用場景中,有時需要同時下發多條消息,但現在的消息隊列比如kafka只支持單條消息的事務保證,不能保證多條消息,今天說的這個方案就時kafka內部的一個子項目中基於2PC和延遲更新來實現分佈式事務 2P