.NET Core Community 第四個千星項目誕生:微服務框架 Surging


本文所有打賞將全數捐贈於 NCC(NCC 的資金目前由 傾竹大人 負責管理),請注明捐贈於 NCC。捐贈情況將由傾竹大人在此處公示

提及 .NET 微服務,我們腦海中浮現的一系列印象中,總有 Surging 的蹤跡。毫無疑問,盡管我們尚未將之納入生產環境的技術選型范圍,但這個項目我們已經觀察了很久,私底下也拿來學習和嘗試。對我來說,讓我最感動的瞬間是作者那句「給我 2 年時間,我給你一個完整的微服務框架」,如果給他 2 年時間,如果我們繼續觀察 2 年,2 年后的 Surging 會給我們什么驚喜么?答案欲言未言,就在身邊,今天這篇文章目的不在於介紹范亮先生及其 Surging,而在於祝賀范亮先生的 Surging 成為 NCC 的第四個千星項目。感謝他的努力,祝賀他的成績。

去年年中,范亮先生為大家帶來了 Surging,詳細介紹了 Surging 的架構思想。Surging 是一個分布式微服務框架,提供高性能 RPC 遠程服務調用,采用 Zookeeper、Consul 為服務注冊中心,集成了哈希、隨機、輪詢、壓力最小優先作為負載均衡的算法,集成 Netty 框架,使用異步傳輸。三言兩語無法道盡 Surging,所幸在范亮先生的博客中有大量文章介紹 Surging 的各子系統細節和用例,本文不做贅述。

Surging 能帶來什么?

  1. 簡化的服務調用,通過服務規則的指定,就可以做到服務之間的遠程調用,無需其它方式的侵入
  2. 服務自動注冊與發現,不需要配置服務提供方地址,注冊中心基於ServiceId 或者RoutePath查詢服務提供者的地址和元數據,並且能夠平滑添加或刪除服務提供者。
  3. 軟負載均衡及容錯機制,通過surging內部負載算法和容錯規則的設定,從而達到內部調用的負載和容錯
  4. 分布式緩存中間件:通過哈希一致性算法來實現負載,並且有健康檢查能夠平滑的把不健康的服務從列表中刪除
  5. 事件總線:通過對於事件總線的適配可以實現發布訂閱交互模式
  6. 容器化持續集成與持續交付 :通過構建一體化Devops平台,實現項目的自動化構建、部署、測試和發布,從而提高生產環境的可靠性、穩定性、彈性和安全性。
  7. 業務模塊化驅動引擎,通過加載指定業務模塊,能夠更加靈活、高效的部署不同版本的業務功能模塊

項目:https://github.com/dotnetcore/surging
授權:MIT
文檔:https://github.com/dotnetcore/surging/blob/master/docs/README.md
簡單示例:https://github.com/dotnetcore/surging/blob/master/docs/docs.en/INDEX.md

作者:Fanliang11(范亮)
GitHub:https://github.com/fanliang11


在 NCC Meetup 2018 Shanghai 活動中,范亮先生為我們介紹了 Surging


Surging 自加入 NCC 起始終堅持不懈的更新、完善,作者發型優美、思路嚴謹;項目逐漸完整、日趨完善,於 2018 年 6 月底七月初成為 NCC 第四個星數破千的項目,值得祝賀。為此,經 NCC 授權,由 AlexLEWIS 贈送 Surging 作者 Fanliang11 先生圖書一本。

將《思維簡史》贈予范亮先生。


如果您有項目想加入我們,歡迎來 http://github.com/dotnetcore/home 提請:)

本文所有打賞將全數捐贈於 NCC(NCC 的資金目前由 傾竹大人 負責管理),請注明捐贈於 NCC。捐贈情況將由傾竹大人在此處公示


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2024 CODEPRJ.COM