微軟Service Fabric正式開源,入局第三代微服務框架爭霸!
小數話:
導讀
微軟的 Azure Service Fabric 的官方博客在2017.3.14日發布了一篇博客《Service Fabric .NET SDK goes open source》,詳見下面原文翻譯。介紹了社區呼聲最高的 Service Fabric 的開源情況以及當前的情況,當時開源了 Service Fabric 的 .NET SDK 部分,社區一直在期盼著 Service Fabric 的正式開源,經過了一年漫長的等待,2018年3月14日微軟終於開源了 Service Fabric,而且是以MIT 許可下開放源代碼。
目前微軟在 Github 上的開源地址是https://github.com/Microsoft/service-fabric,目前的代碼構建適用於 Linux 的 Service Fabric,運行基本測試,有問題可以在上面提交 Issue和 PR 了,Windows 構建環境以及完整的 CI 環境還沒有遷移過來,看到代碼還是3個小時前初始化的。Windows內部為 Service Fabric 開發了將近十年的內部服務,其中大部分時間都是微軟內部平台,比如 Office365,Azure Stack 平台等,這意味著我們有近十年的內部微軟工具可以在遷移之前完成遷移和流程細化,逐步全部開源,以後全部開發都在開源模式下進行開發工作。
原文翻譯
我們很高興地宣布 Service Fabric 將在 MIT 許可下開放源代碼,在未來幾個月內,我們將在GitHub上過渡到一個完全開放的開發過程。
我們聽到了很多關於能夠參與到你所依賴的平台的開發和方向上,以運行你的關鍵任務應用程序的重要性。由於這個原因,我們在 GitHub 和 Stack Overflow 上保持活躍,開放源碼平台使這種協作更好的自然演進。這就是為什麼我們致力於將我們的整個開發和規划過程轉移到 GitHub上,從而使Service Fabric成為一個成功的開源項目。在GitHub上,我們可以與社區與社區開放式協作,使Service Fabric更好地為每個人服務。
Where we are now
至此,我們已經在 GitHub 上使用了 Linux 構建和測試工具,這意味著你可以克隆repo,為 Linux 構建 Service Fabric,運行基本測試,打開問題,並提交pull請求。我們正在努力使 Windows 構建環境也遷移到一個完整的 CI 環境中。
這裡有一點歷史。我們在 Windows 內部為 Service Fabric 開發了將近十年的時間,其中大部分時間都是微軟內部平台,這意味著我們有近十年的內部微軟工具來遷移和處理, 可以把一些東西用在 GitHub 上。 當我們幾年前開始研究 Linux 支持時,我們是一個公共產品,並且已經計劃開源,所以我們儘可能使用通用的公共可用工具。
現在,您可以為Linux編譯和測試 Service Fabric,從底層的集群和聯合層一直到流程和容器的激活。我們也在為貢獻而開放,儘管我們的步伐有限,我們也為開放捐款開放,儘管我們將所有事情都公開化,但速度有限。
How we got here
去年的這個時候,我們開放了 Service Fabric 的源代碼部分,包括 Reliable Services,Reliable Actors 和我們的 ASP.NET Core 集成庫。 從那時起,我們已經慢慢地將 Service Fabric 的其他小部分移動到了 GitHub,包括 Service Fabric Explorer 和 SF CLI。 在那段時間裡,我們花了很多時間來制定一個將所有 Service Fabric 轉換為開源代碼的計劃。
我們在這個項目上投入了大量資金,我們希望它能增長。許多微軟都在使用服務架構,包括Azure基礎設施服務和大型解決方案,如 Azure SQL DB、Azure Cosmos DB 和 Cortana。這是我們大規模分散式應用程序的秘訣。只是這個秘訣不再是我們的了。自從我們在2015年公開發布了服務架構以來,微軟以外的許多其他公司也開始依賴於 Service Fabric,以滿足其關鍵的、大規模的應用程序。
What"s next and how you can join in on the fun
對於 Service Fabric 和團隊來說,這是我們向開放式開發過渡的一大步。 我們現在主要關注的是將 Service Fabric 的整個構建,測試和開發流程移至 GitHub。 雖然我們正在致力於此,但創新並不止於此,我們將繼續定期發布新功能,我們將繼續定期發布新特性、bug修復和支持。
我們的下一個主要步驟有兩方面:
轉向開放發展。 我們將把問題跟蹤和我們自己的開發轉移到 GitHub上。 我們的目標是使工作重點明確,並將工作與明確的項目路線圖相結合,並制定明確的治理和貢獻指導。 我們立即歡迎捐助,但我們還沒有達到全速,所以請耐心等待我們改進過程和指導方針。
針對 Windows 和 Linux 的完整構建,測試和 CI 管道。 如果沒有這個,我們就不能做很多事情,所以我們專註於把所有的事情都安排好。如果你有興趣幫助我們設置(或者你只是喜歡構建和測試自動化),請轉到 Microsoft / service-fabric 回購站,我們正在跟蹤該設備的工作。
當我們朝著這些更大的里程碑前進時,我們將不斷地改進 repo。我們會定期在博客和 Service Fabric 回購庫中更新進度,因此請務必馬上查看,我們將在 GitHub 上看到你!
常見問題
1.Service Fabric 的哪些部分正在開源?
整個 Service Fabric 運行時都在 GitHub 上開源 ——構建和運行 Service Fabric 所需的一切。最初,我們將有一個適用於 Linux 的構建環境,並且很快就會有 Windows。
2.我可以構建並運行所有 Service Fabric 嗎?
您現在可以為Linux構建和運行 Service Fabric。Windows 工具的完整構建和測試環境尚不可用,但我們正在努力將所有內容都發布到 GitHub 上。請注意 repo 的更新。
3.Azure Service Fabric和其它獨立產品將會發生什麼?他們還會得到微軟的支持嗎?
絕對的。我們將繼續為微軟提供的所有服務產品提供同樣的支持,包括 Azure 的 Service Fabric 和其它所有獨立的產品。
4.我有個一直想要構建的新功能。既然你們已經開源,那我現在可以開始與團隊一起工作嗎?
當然,我們很樂意與你合作。你可以先在 GitHub 上打開一個話題,然後我們就從那裡開始。請注意,我們仍在過渡,目前的開源項目的重點是要建立項目環境,所以請耐心等待,因為我們還沒有達到全速。
5.這仍然是微軟擁有的,還是會捐贈給 CNCF 或 .NET 基金會?
微軟擁有該項目,Service Fabric 團隊將是決定項目方向的管理機構。作為理事機構,我們有責任遵循社區的指導。也就是說,我們不排除將來捐贈給基金會的可能性。
結論
Service Fabric 會帶來如下好處:
支持創建無狀態和有狀態的微服務,通過雲平台來伸縮他們,以應對高複雜度、低延遲、數據密集的情況;
通過應用程序級別的感知和洞察,為微服務帶來編排和自動化的優勢;
解決分散式系統諸如狀態管理這樣的難點,為開發人員提供應用程序生命周期管理的能力以便隨著業務的增長無需重構系統架構;
相關工具會集成到 Visual Studio 中,也會提供相應命令行工具,以便開發人員能夠快速和輕易地上手;
同時支持 .NET和 Java,這個特性特別適合目前國內原來很多投資於 .NET 平台,被人忽悠爬上了 Java 「賊船」,看到了 .NET Core,想回來的可以回來了。
開源微服務框架從 第一代 Dubbo 到 第二代 Spring Cloud 到 第三代 基於ServiceMesh 的 Service Fabric、Istio、Conduit三國爭霸。
圖片來自網友貢獻
TAG:ServiceMesh中文網 |