最近博客園出現(xiàn)了一篇文章《微服務(wù)時(shí)代之2017年五軍之戰(zhàn):Net PHP誰先死》,掀起了一波撕逼,作者只是從一個(gè)使用者的角度來指點(diǎn)江山,這個(gè)姿勢(shì)是不對(duì)的。.NET Core就是專門針對(duì)模塊化的微服務(wù)架構(gòu)而設(shè)計(jì),在微服務(wù)架構(gòu)這方面Java的Spring Cloud具有非常高的人氣,這個(gè)正是這篇文章作者的立腳點(diǎn)。然后他沒有看到蓬勃發(fā)展的.NET 社區(qū)的微服務(wù)的相關(guān)框架,本文主要梳理下當(dāng)前.NET社區(qū)微服務(wù)的相關(guān)項(xiàng)目的匯集。
微軟作為.NET的主戰(zhàn)場,自然在當(dāng)前的微服務(wù)框架上有著豐富的經(jīng)驗(yàn),這一領(lǐng)域的代表作就是Azure Service Fabric,在Azure上的眾多云服務(wù)都是基于Servie Fabric構(gòu)建,而且微軟已經(jīng)明確表態(tài)了Service Fabric將開源,Runtime還沒開源,說有計(jì)劃開源,但目前因?yàn)橐蕾囉诤芏鄡?nèi)部工具、組件,在逐步推進(jìn)runtime的開源進(jìn)程,具體可以看下我寫的一篇博客《期待微軟平臺(tái)即服務(wù)技術(shù)Service Fabric 開源》。如果你是基于Azure平臺(tái)來開發(fā),你完全可以使用Service Fabric 做應(yīng)用開發(fā)。當(dāng)然你如果是在你私有云里用他,也是完全可以的,具體案例我舉一個(gè)就是騰訊游戲:https://customers.microsoft.com/en-us/story/tencent-telecommunications-azure-service-fabric-windows-server-en
這里列出1個(gè)Github 以Service Fabric 開發(fā)微服務(wù)的項(xiàng)目:
https://github.com/danielmarbach/Microservices.ServiceFabric
在微服務(wù)架構(gòu)這方面Spring Cloud具有非常高的人氣,如果你在使用Spring Cloud,可以使用開源項(xiàng)目https://github.com/steeltoeoss 開發(fā).NET Core應(yīng)用,具體可以參考這篇文章Enabling .NET Core Microservices with Steeltoe and Pivotal Cloud Foundry .
https://github.com/gigya/microdot,這是一個(gè)4月份才開源的.NET微服務(wù)框架,讓您專注于編寫定義服務(wù)邏輯的代碼,無需解決開發(fā)分布式系統(tǒng)的無數(shù)挑戰(zhàn),可以很好的Microsoft Orleans的集成。
.NET China Foundation 也組織整合了系列國內(nèi)社區(qū)開源項(xiàng)目,里面有多個(gè)項(xiàng)目都是以微服務(wù)為方向,歡迎大家加入一起來把.NET Core的微服務(wù)玩好。
https://github.com/dotnetcore/CAP
https://github.com/dotnetcore/surging
https://github.com/dotnetcore/Util
.NET社區(qū)里還有很多微服務(wù)的項(xiàng)目,下面我就簡要列出他們?cè)贕ithub上的地址:
https://github.com/xigadee/Microservice
https://github.com/daxnet/apworks-core
https://github.com/daxnet/apworks-examples
https://github.com/Elders/Cronus
https://github.com/Cimpress-MCP/Cimpress.Nancy
https://github.com/pchalamet/GrpcConsul
https://github.com/TomPallister/Ocelot ,Ocelot是一個(gè)使用.NET Core平臺(tái)上的一個(gè)API Gateway,這個(gè)項(xiàng)目的目標(biāo)是在.NET上面運(yùn)行微服務(wù)架構(gòu),我在年初基于Ocelot做了一個(gè)POC項(xiàng)目 https://github.com/geffzhang/NanoFabric ,目前已經(jīng)上線運(yùn)行。同時(shí)也在不斷的豐富Ocelot的功能。
簡要的列了一下.NET 平臺(tái)上的微服務(wù)開發(fā)的相關(guān)類庫,歡迎大家推薦你用過的微服務(wù)的相關(guān)類庫,在最后推薦一個(gè).NET上歸屬與.NET 基金會(huì)下面的開源項(xiàng)目:https://dotnetfoundation.org/projects?type=project 這里可以找到你想要的項(xiàng)目。
聯(lián)系客服