.NET Core/.NET5/.NET6 開源專案彙總4:CMS、Blog專案

張傳寧發表於2021-06-23

開源專案是眾多組織與個人分享的元件或專案,作者付出的心血我們是無法體會的,所以首先大家要心存感激、尊重。請嚴格遵守每個專案的開源協議後再使用。尊重智慧財產權,共建和諧開源社群。

以下開源專案(含元件),從網路蒐集,後期會不斷補充。

CMS專案
  • OrchardCore【.NET基金會為該專案提供技術支援】

.NET Core/.NET5/.NET6 開源專案彙總4:CMS、Blog專案

  Orchard Core 是一個免費和開源的社群交流專案,致力於在 ASP.NET Core 平臺開發應用程式和可重用性元件。它將建立用於ASP.Net Core應用和擴充套件的共享元件,以及修改這些元件以便使其應用於終端使用者,指令碼人員和開發者。如果您現在是.NET Core 跨平臺的愛好者,想找一個基於ASP.NET Core開發的開源框架,Orchard Core 是一個很不錯的選擇,Orchard Core 是一個基於 ASP.NET Core 構建的可擴充套件與模組化設計的開源CMS系統,全部程式碼在GitHub上已開源,其中使用了很多框架和最佳實戰,它的架構設計值學習 。

  Orchard Core 是構建在 Orchard CMS 與 ASP.NET Core 之上進行二次開發的產品。
Orchard Core 包括兩個不同的目標:
Orchard Core Framework:用於在ASP.NET Core上構建模組化、多租戶應用程式的應用程式框架。
Orchard Core CMS:建立在Orchard Core框架之上的Web內容管理系統(CMS)。
重要的是要注意框架和CMS之間的差異。一些想要開發SaaS應用程式的開發人員只對模組化框架感興趣。其他想要建立政企網站、部落格網站的話將重點放在CMS和建立模組,以提高他們的網站或整個生態系統。

開源地址:https://github.com/OrchardCMS/OrchardCore

  • SiteServer【國產】

.NET Core/.NET5/.NET6 開源專案彙總4:CMS、Blog專案

SiteServer CMS 基於 .NET CORE,能夠以最低的成本、最少的人力投入在最短的時間內架設一個功能齊全、效能優異、規模龐大並易於維護的網站平臺。

產品特性

  • 開源免費的企業級CMS。
  • 網站群與多伺服器釋出。
  • 內容多終端一體化。
  • 眾多功能外掛,完整產品線。
  • 支援各種內容模型。
  • 高度靈活的許可權分配。
  • 良好的擴充套件性與二次開發 如果有.NET開發人員,還能通過修改SiteServer CMS原始碼進行二次開發。

開源地址:https://gitee.com/siteserver/cms

部落格專案
  • XBlog

.NET Core/.NET5/.NET6 開源專案彙總4:CMS、Blog專案

XBlog是使用.NET Core技術,完全基於BeetleX.FastHttpAp框架開發,可以執行在Windows和Linux系統上的部落格系統。如果是個人學習與建站,則非常值得推薦。

技術要點:

  • 基於dotnet core平臺,可以執行在windows和linux系統上。
  • 完全基於BeetleX.FastHttpAp框架開發。
  • 前後端分離,完全脫離後端檢視引擎;基於vuejs和webapi模式。
  • 混合HTTP和Websocket,當瀏覽器相容Websocket的情況下請求會使用Websocket。
  • 基於javascript前端Markdown,降低文章在服務端解釋的損耗。
  • 支援HTTPS滿足安全訪問的需求。
  • javascript async/await 對訪問的瀏覽器要求比較高,舊版本瀏覽器可能無法檢視。

開源地址:https://github.com/beetlex-io/XBlog

  • Blog.Core
Blog.Core 是一個開箱即用的企業級許可權管理應用框架。採用最新的前後端完全分離技術【 ASP.NET Core Api 5.0 + Vue 2.x 】。並結合 IdentityServer4 ,可快速解決多客戶端和多資源服務的統一認證與鑑權的問題。

框架功能點

1、豐富完整的介面文件,在檢視的基礎上,可以模擬前端呼叫,更方便。
2、採用多層開發,隔離性更好,封裝更完善。
3、基於專案模板,可以一鍵建立自己的專案。
4、搭配程式碼生成器,實現快速開發,節省成本。
5、專案整合多庫模式以及讀寫分離模式,可以同時處理多個資料庫的不同模組,更快更安全。
6、整合統一認證平臺 IdentityServer4 ,實現多個專案的統一認證管理,解決了之前一個專案, 一套使用者的弊端,更適用微服務的開發。
7、豐富的審計日誌處理,方便線上專案快速定位異常點。
8、支援自由切換多種資料庫,Sqlite/SqlServer/MySql/PostgreSQL/Oracle;
9、支援 Docker 容器化開發,可以搭配 k8s 更好的實現微服務。

應用領域

1、【對接第三方api】專案通過webapi,可以快速對接第三方api服務,實現業務邏輯。
2、【前後端分離】 採用的是API+前端的完全分離的開發模式,滿足平時開發的所有需求, 你可以對接任何的自定義前端專案:無論是微信小程式,還是授權APP,無論是PC網頁, 還是手機H5。
3、【多專案】同時框架還整合了一套鑑權平臺,採用IdentityServer4,可以快速的實現多個客戶端的認證與授權服務, 從而大大的減少了平時的工作量,可以快速的進行產品迭代。
4、【微服務】當然,因為採用的是API模式,所以同樣適用於微服務專案,實現高併發的產品需求。

市場前景

1、前後端分離模式已經是目前的主流開發模式,框架已經是一套可行的方案,開箱即用。 2、擁有幾十篇技術文件和3000人的技術社群,方便快捷的解決問題。
3、目前已經有超過20多家公司在生產環境中使用,當然實際中更多,具體檢視 點選檢視使用的情況
4、同時可以搭配自己的業務,實現微服務的開發,在大資料高併發中,佔有更好的優勢。
5、本專案直接作者由微軟MVP“老張的哲學”出品,並長久維護,不會斷更,有保障。

功能與進度

框架模組:

  • [√] 採用倉儲+服務+介面的形式封裝框架;
  • [√] 非同步 async/await 開發;
  • [√] 接入國產資料庫ORM元件 —— SqlSugar,封裝資料庫操作;
  • [√] 支援自由切換多種資料庫,MySql/SqlServer/Sqlite/Oracle/Postgresql/達夢/人大金倉;
  • [√] 實現專案啟動,自動生成種子資料 ;
  • [√] 五種日誌記錄,審計/異常/請求響應/服務操作/Sql記錄等;
  • [√] 支援專案事務處理(若要分散式,用cap即可);
  • [√] 設計4種 AOP 切面程式設計,功能涵蓋:日誌、快取、審計、事務 ;
  • [√] 支援 T4 程式碼模板,自動生成每層程式碼;
  • [√] 或使用 DbFirst 一鍵建立自己專案的四層檔案(支援多庫);
  • [√] 封裝Blog.Core.Webapi.Template專案模板,一鍵重建自己的專案 ;
  • [√] 搭配多個前端案例供參考和借鑑:Blog.Vue、Blog.Admin、Nuxt.tbug、Blog.Mvp.Blazor ;
  • [√] 統一整合 IdentityServer4 認證 ;

元件模組:

  • [√] 提供 Redis 做快取處理;
  • [√] 使用 Swagger 做api文件;
  • [√] 使用 MiniProfiler 做介面效能分析 ;
  • [√] 使用 Automapper 處理物件對映;
  • [√] 使用 AutoFac 做依賴注入容器,並提供批量服務注入 ;
  • [√] 支援 CORS 跨域;
  • [√] 封裝 JWT 自定義策略授權;
  • [√] 使用 Log4Net 日誌框架,整合原生 ILogger 介面做日誌記錄;
  • [√] 使用 SignalR 雙工通訊 ;
  • [√] 新增 IpRateLimiting 做 API 限流處理;
  • [√] 使用 Quartz.net 做任務排程(目前單機多工,叢集排程暫不支援);
  • [√] 支援 資料庫讀寫分離和多庫操作 ;
  • [√] 新增 Redis 訊息佇列 ;
  • [√] 新增 RabbitMQ 訊息佇列 ;
  • [√] 新增 EventBus 事件匯流排 ;
  • [√] 新增 實現聚合支付;
  • [ ] 計劃 - 資料部門許可權;
  • [ ] 計劃 - ES 搜尋;

微服務模組:

    • [√] 可配合 Docker 實現容器化;
    • [√] 可配合 Jenkins 實現CI / CD;
    • [√] 可配合 Consul 實現服務發現;
    • [√] 可配合 Ocelot 實現閘道器處理;
    • [√] 可配合 Nginx 實現負載均衡;
    • [√] 可配合 Ids4 實現認證中心;
 


參考文獻:

  • https://jishuin.proginn.com/p/763bfbd2b794
  • https://www.cnblogs.com/shanyou/p/9700422.html
  • https://www.cnblogs.com/sheng-jie/p/9789180.html

 

相關文章