Meet new Sentinel Go committers!

頭圖.png

來源|阿里巴巴雲原生公衆號git

Sentinel 是阿里巴巴開源的,面向分佈式服務架構的流量控制組件,主要以流量爲切入點,從限流、流量整形、熔斷降級、系統自適應保護等多個維度來幫助開發者保障微服務的穩定性。Sentinel 承接了阿里巴巴近 10 年的 雙11 大促流量的核心場景,例如秒殺、冷啓動、消息削峯填谷、集羣流量控制、實時熔斷下游不可用服務等,是保障微服務高可用的利器,原生支持 Java/Go/C++ 等多種語言,而且提供 Istio/Envoy 全局流控支持來爲 Service Mesh 提供高可用防禦的能力。github

2020 年年初,Sentinel 社區宣佈了 Sentinel Go 版本的發佈,爲 Go 語言的微服務和基礎組件提供高可用防禦和容錯能力的原生支持,標誌着 Sentinel 朝着多元化與雲原生邁出了新的一步。在這半年的時間內,社區推出了近 10 個版本,逐步對齊了核心高可用防禦和容錯能力,同時也在不斷擴充開源生態,與 dubbo-go、螞蟻 MOSN 等開源社區進行共建。golang

11 月,Sentinel Go 1.0 GA 版本正式發佈,標誌着 Go 版本正式進入生產可用階段。詳情請看:阿里 雙11 同款流控降級組件 Sentinel Go 正式 GA,助力雲原生服務穩穩穩架構

Meet new Sentinel Go committers

可喜的是,社區在 11 月迎來了三位新 committer。接下來,咱們一塊兒來認識下這三位新 committer。分佈式

1.png

1. 是什麼契機讓你瞭解到 sentinel 的?

2.png

以前在阿里實習過,對 Sentinel 本來有過一些接觸。工做中有一些流控需求,就深刻調研過 Sentinel,慢慢的開始和Sentinel開源負責人宿何一塊兒共創 Sentinel Go 這個項目。ide

3.png

工做項目中須要實現熔斷限流相關的功能,就調研了許多相關的開源項目,最終發現基於 sentinel-golang 開發是最合適的。爲了對 sentinel-golang 有更深的理解和更好的把控,就開始深度閱讀 sentinel-golang 源碼,並加入 sentinel 社區與小夥伴們進行深度交流。微服務

4.png

在參與 nacos-sdk-go 項目開發時,瞭解到 sentienl-golang。另外有計劃使用 Nacos 做爲外部動態數據源,就參與進來貢獻了。學習

2. 參與到 sentinel 的開源貢獻是什麼樣的體驗?

2.png

Sentinel 開源社區是一個很是開放,包容,活躍的社區。在這裏能夠認識不少的牛人,學習分佈式系統高可用流量防禦的大量實踐經驗。在這裏任何想法和優秀的設計,均可以和社區核心成員一塊兒討論而且落地。優化

3.png

很是幸運能參與到 Sentinel 的開源貢獻,在參與的過程當中,收穫不少。首先認識了不少牛人,得到了不少可貴的交流機會;其次,在貢獻代碼的過程當中,進一步加深了對 Sentinel 項目設計與實現的理解;還有就是利用業餘時間參與貢獻,讓本身的業餘時間更加充實。設計

4.png

首先以爲氛圍很好,社區大佬 @宿何 和 @louyuting 等等都很熱情會很是及時的解答每個問題。其次以爲社區很是專業,能夠和不少小夥伴進行深度交流,參與貢獻的過程當中會學習到不少知識,對 Sentinel 的設計理念有了更深層次的理解。

3. 支撐你持續貢獻 Sentinel 最大的動力是什麼?

2.png

Sentinel Go 這個項目我算是第一行代碼的 Contributor,一路走過來慢慢跟隨着項目的成長。整個過程可以看到項目不斷的完善成長,也支持了社區裏面一些公司的實際需求。對我而言,一方面是我的的成長,本身主導的 Sentinel Go 裏面的一些核心設計可以落地,看到本身作的產品可以真正影響到一些人一些公司,產生實際的價值。另外與一些其他社區好比 dubbogo、mosn 社區,以及社區裏面的一些公司合做,可以看到 Sentinel Go 能真正幫助他們解決微服務在高可用流量防禦方面的一些痛點,很是有成就感。

3.png

最大的動力就是但願實現我的與 sentinel 的共同成長。每次本身的代碼被合併,對本身是個很大的鼓舞,促使本身繼續努力、繼續提高自我。也但願經過我的微薄的貢獻,能使 sentinel 發展地愈來愈好,能幫助到愈來愈多的人或項目。最讓我有成就感的是本身主動挖掘到了項目中可改進和可優化的點,而且最終完成相應的代碼貢獻。我認爲可以給在一個優秀的開源項目中發現問題並解決問題,是對我的能力一個很好的證實,因此會讓我頗有成就感。

4.png

最大的動力應該就是對於開源社區的熱情吧,以及但願在貢獻的過程當中與 sentinel 一塊兒成長。在 sentinel 這樣的優秀產品中留下本身貢獻代碼的足跡是很是有意義的事情。從加入社區開始到 sentinel-golang 的 v1.0.0 發佈,在這個過程當中學習到不少,不斷的挑戰本身,看着 sentinel-golang 成長頗有成就感。

4. 貢獻中遇到最大的挑戰是什麼?

2.png

項目前期對一些高可用流量防禦的實際場景理解的不夠充分,一些核心設計上考慮的可能不夠全面。不過整個社區都比較活躍,和一些社區核心成員溝通交流逐漸加深了對一些業務場景理解。

3.png

前期因爲對整個項目熟悉度還不夠,貢獻代碼時,可能僅考慮到一個表面的點,更深層次的東西可能考慮不到。不過,使人欣慰的是社區氛圍比較好,在社區成員的幫助下,本身也逐步的對整個項目熟悉起來了。

4.png

最大的挑戰也許就是第一次給 sentinel 提交 PR 的時候了。由於剛開始不太熟悉項目 PR 改了不少次。最後多虧 @louyuting 大神耐心指教。

5. 還有在參與 Spring Cloud Alibaba 全家桶中的其餘開源項目的貢獻嗎?

2.png

主要會參與一些 Sentinel Go 與 Dubbo Go 融合的相關事情。

3.png

目前尚未參與其餘的項目,後續有機會的話想參一下 Dubbo Go 項目。

4.png

目前也有參與 Nacos 項目。

How to contribute

相關文章
相關標籤/搜索