微軟Azure Service Fabric朝開源邁出了第一步
微軟通過嘗試對(duì) Azure Service Fabric 的逐漸開源,繼續(xù)發(fā)展開源軟件項(xiàng)目。最近,框架的 SDK (大部分)已經(jīng)通過MIT授權(quán)發(fā)布到了 GitHub 上。該項(xiàng)目的團(tuán)隊(duì)稱其為廣泛開源的“起步階段”。
Azure Service Fabric 在2015年***次面世,其脫胎于微軟開發(fā)建設(shè)的基礎(chǔ)服務(wù)結(jié)構(gòu),主要用于支撐大規(guī)模云服務(wù),包括Azure SQL、Cortana和商用版Skype。它提供了可擴(kuò)展和容錯(cuò)服務(wù),運(yùn)行于集群(虛擬)機(jī)器之上。 Service Fabric 主要是在 Azure 系統(tǒng)上工作,但運(yùn)行環(huán)境可以自由下載,并且能部署在本地 Windows 系統(tǒng)中,甚至在非微軟云的 Windows 虛擬機(jī)上。目前另一個(gè) Linux 版本的運(yùn)行環(huán)境也在開發(fā)中。
微軟已經(jīng)開始使用 GitHub 的跟蹤特性獲取 Service Fabric 中的需求和缺陷。同時(shí),運(yùn)行環(huán)境的用戶也對(duì)Service Fabric 的設(shè)計(jì)和功能表達(dá)了很大興趣。開放 SDK 就被視為是Azure 服務(wù)框架參與開發(fā)者社區(qū)的下一步舉措,并且對(duì)框架的發(fā)展方向起到了推動(dòng)作用。
然而,對(duì)于 Service Fabric 的開源,公司的態(tài)度比之前的項(xiàng)目更加謹(jǐn)慎,比如 .NET ,Chakra 和Edge瀏覽器的 JavaScript 引擎。 Service Fabric 開始是作為內(nèi)部服務(wù)進(jìn)行發(fā)展的,因此整個(gè)開發(fā)進(jìn)程都使用了保密的工具。為了開源,這些問題必須得到解決。首先,工具要進(jìn)行升級(jí)或者開源;其次,服務(wù)要徹底從依賴的其它系統(tǒng)中剝離出來。
Azure Service Fabric 在微軟的眾多服務(wù)中承擔(dān)著重要業(yè)務(wù),這將使開源進(jìn)程趨向于保守。同時(shí)也意味著開源Service Fabric 不會(huì)和.NET 核心一樣順利,因?yàn)?NET 核心開源項(xiàng)目由獨(dú)立監(jiān)督委員會(huì)領(lǐng)導(dǎo),并且在GitHub上獲得了大量社區(qū)貢獻(xiàn)。
微軟并沒有計(jì)劃開放整個(gè)Service Fabric 的SDK,其中可靠的數(shù)據(jù)集支持就將缺失,而且開源工作在前期只會(huì)小范圍進(jìn)行,代碼加入公共源代碼庫的時(shí)間也不固定。
盡管微軟開發(fā)團(tuán)隊(duì)沒有承諾未來的行動(dòng),但開放源碼的進(jìn)程還將繼續(xù)。更多的 SDK 內(nèi)容,甚至是服務(wù)運(yùn)行環(huán)境都有可能是未來開源的候選。