今天推薦的文章其實是微軟的一篇官方公告,宣布其即將發布的一個支撐高可用高伸縮雲服務的框架——Azure Service Fabric。
前兩天,微軟Azure平台的CTO Mark Russinovich在Azure的官方博客上發表了一篇公告,宣布微軟在上個月發布Azure App Service后即將發布Azure Service Fabric這個框架。首先要注意的一點是,此Fabric非之前的AppFabric,AppFabric是Windows Server上的一組集成技術,可更輕松地生成、擴展和管理 IIS 上運行的 Web 應用程序和復合應用程序。而Service Fabric的目標是讓創業團隊的開發人員和ISV能夠創建高伸縮性高可用的雲應用程序。
也就是說,Service Fabric會提供一系列工具給開發人員,讓他們無需擔心應用的伸縮性問題,也不用重新設計他們的系統架構。這些工具其實是脫胎於微軟運維Skype for Business、Azure SQL Database和Bing Cortana等產品的豐富經驗。
Service Fabric會帶來如下好處:
- 支持創建無狀態和有狀態的微服務,通過雲平台來伸縮他們,以應對高復雜度、低延遲、數據密集的情況
- 通過應用程序級別的感知和洞察,為微服務帶來編排和自動化的優勢
- 解決分布式系統諸如狀態管理這樣的難點,為開發人員提供應用程序生命周期管理的能力以便隨着業務的增長無需重構系統架構
- 相關工具會集成到Visual Studio中,也會提供相應命令行工具,以便開發人員能夠快速和輕易地上手
整個Service Fabric的架構圖如下:
從上圖可以看出,這個東西不僅可以跑在公有雲上,也可以跑在私有雲上;不僅可以跑在Windows下,也可以跑在Linux下。Service Fabric之前已經有早期客戶在使用了,這篇文章舉了一個做物聯網實時監控和分析的案例客戶——舊金山的OSIsoft。微軟打算在下周的BUILD大會上發布開發人員預覽版,到時候我們就可以一睹真容了。
我之所以關心這個東西,是因為最近在研究微服務架構的東西。如果有了這個Service Fabric,那么只需要考慮開發微服務的功能,而無需過多考慮其部署后的伸縮性和可用性問題,都可以直接交給它了。不過天朝版Azure要有這個功能,估計還得等上一段時間。當然,Docker也是一種選擇。更多信息可以“閱讀原文”。