我們擅長商業策略與用戶體驗的完美結合。
歡迎瀏覽我們的案例。
近日,阿里中間件開源組件 Sentinel 發布首個官方推薦可生產版本:1.3.0-GA ,該版本包括 Sentinel 控制臺功能的完善和一些 bug 修復,以及其它的產品改進,是一個具有里程碑意義的生產可用版本。
Sentinel 承接了阿里巴巴近 10 年的雙十一大促流量的核心場景,完美地保障了阿里巴巴歷年雙十一的穩定性,因此從開源之初即具備生產可用的能力。Sentinel 開源三個月以來,受到開源社區的廣泛關注,目前已有多個企業用戶在生產環境中使用,得到了用戶的一致好評,Github 社區 star 數突破 3000。
2012 年,Sentinel 誕生于阿里巴巴集團內部,主要功能為入口流量控制;
2013 - 2018 年,Sentinel 在阿里巴巴集團內部迅速發展,成為基礎技術模塊,覆蓋了所有的核心場景。Sentinel 也因此積累了大量的流量控制場景以及生產實踐;
2018 年 7 月,Sentinel 正式開源,首個版本(0.1.0)即生產可用;
2018 年 9 月,Sentinel 的重要里程碑版本 0.2.0 發布,帶來多項全新特性,同時已有外部企業用戶在生產環境中使用;
2018 年 10 月末,Sentinel 進入 CNCF Landscape;Sentinel 的里程碑版本 1.3.0-GA 發布,重要的生產可用版本。
Sentinel 的開源生態非常廣泛,其針對常用的框架和庫進行了適配,包括 Web Servlet、Dubbo、Spring Cloud 和 gRPC 等,用戶只需引入相應依賴并進行簡單配置即可快速接入 Sentinel。同時,Sentinel 動態規則源針對常見的配置中心和遠程存儲進行適配,目前已支持 Nacos、ZooKeeper、Apollo、Redis 等多種動態規則源,可以覆蓋到很多的生產場景。未來,Sentinel 還會對更多常用框架和配置中心進行適配,覆蓋更廣泛的場景。
那么 Sentinel 作為生產可用的流量控制框架,都有哪些吸引人的特性呢?
輕量級
Sentinel 作為一個功能完備的高可用流量控制框架,其核心 sentinel-core 沒有任何多余依賴,打包后只有 200 KB,非常輕量級,用戶可以放心地引入 sentinel-core 而不需擔心依賴問題。同時,引入 Sentinel 帶來的性能損耗非常小,單機 QPS 不太大的時候損耗幾乎可以忽略不計(單機 4.3W QPS 的損耗約為 2.36%),因此也無需擔心 Sentinel 影響線上業務性能的問題。
易用的控制臺
Sentinel 控制臺提供強大的實時監控和規則配置管理能力,用戶可以非常方便地:
直觀地查看不同應用、不同資源的實時監控數據
配置流控規則、降級規則、系統保護規則、熱點規則、授權規則
若用戶在生產環境中使用了動態規則源,只需對控制臺進行少量的改造即可在生產環境中使用 Sentinel 控制臺,可以參考 在生產環境中使用 Sentinel 控制臺 一文。
專業的流量控制
Sentinel 提供多個方面的專業流控能力來保障服務的穩定性:
多維度的流量控制:流量是實時的、不確定的,因此我們需要對實時到來的不規則的流量進行一定的控制。Sentinel 從資源粒度、運行的指標、資源的調用關系、控制效果等多個維度提供流量控制的能力;
服務的熔斷降級:Sentinel 從多個方面提供對不穩定服務降級的能力,可以及時熔斷不穩定的服務(如響應時間非常長的服務),防止拖垮下游服務造成級聯錯誤;
全局維度的系統保護:Sentinel 從全局的維度對系統負載進行保護,讓系統的入口流量和系統的負載達到一個平衡,保證系統在能力范圍之內處理最多的請求;
黑白名單控制:根據資源的調用方來決定資源請求是否通過;
熱點參數限流:對熱點數據的訪問進行限制,參數粒度的流量控制;
據悉,Sentinel 還將在后續版本中推出集群限流功能、 API Gateway(如 Netflix Zuul)和 Service Mesh(如 Istio)全局流量控制等高級特性。
(邯鄲微信開發公司)