天天看點

邁向雲原生,Sentinel Golang 首個版本釋出

随着微服務的流行,服務和服務之間的穩定性變得越來越重要。 Sentinel

 是阿裡巴巴開源的,面向分布式服務架構的流量控制元件,主要以流量為切入點,從限流、流量整形、熔斷降級、系統自适應保護等多個次元來幫助開發者保障微服務的穩定性。Sentinel 承接了阿裡巴巴近 10 年的雙十一大促流量的核心場景,例如秒殺、冷啟動、消息削峰填谷、叢集流量控制、實時熔斷下遊不可用服務等,是保障微服務高可用的利器。

Sentinel 開源初期主要面向 Java 微服務,同時也在朝着多語言擴充的方向不斷探索。去年中旬,Sentinel 推出 

C++ 原生版本 ,同時針對 Service Mesh 場景,Sentinel 也推出了  Envoy 叢集流量控制 的支援,可以解決 Service Mesh 架構下多語言限流的問題。
邁向雲原生,Sentinel Golang 首個版本釋出
近期,Sentinel 多語言俱樂部又迎來新的一員 ——  Sentinel Golang  首個原生版本 0.1.0 正式釋出,為 Go 語言的微服務提供流控降級、系統保護等特性的原生支援。開發者隻需簡單的幾步即可快速接入 Sentinel,享受到以下能力:

  • 精确限制接口級别的 QPS,防止打垮核心接口。
  • 削峰填谷,激增的請求排隊等待處理。
  • 自适應的系統次元流量保護,結合 load 等系統名額以及服務實時的請求量和響應時間來自動拒絕多餘的流量,盡可能地提升吞吐量的同時保證服務不挂。
  • 實時的秒級監控能力,通過監控日志了解系統的實時流量情況。

更多特性介紹可以參考 

Sentinel Golang 文檔

在接下來的版本中,Sentinel Golang 将會陸續推出熔斷降級、熱點參數限流等一系列的穩定性保障能力。同時,社群也會陸續提供與常用的架構和雲原生元件的整合子產品,如原生 Istio Service Mesh 整合,友善開發者在各種雲原生場景下快速接入 Sentinel。社群後面也計劃提供與 Prometheus 等雲原生監控元件的整合,可以利用 Sentinel 的名額統計資料進行接口級别的監控。

Sentinel Golang 的誕生離不開社群的貢獻,在此感謝 @louyuting 和 @gorexlv 兩位社群開發者在 Sentinel Go 版本演進中的積極貢獻。我們非常歡迎大家持續參與社群貢獻,一起來參與未來版本的演進。若您有意願參與社群貢獻,可以參考 

貢獻指南

 來入門,同時也歡迎聯系我們加入 Sentinel 核心貢獻小組認領任務(Sentinel 開源讨論釘釘群:21977771)。積極參與貢獻的開發者我們會重點關注,有機會被提名為 Committer。Now start hacking!