1. 程式人生 > >社群 正式釋出了跨平臺的 CoreWCF 0.1.0 GA

社群 正式釋出了跨平臺的 CoreWCF 0.1.0 GA

CoreWCF 專案在2021.2.19 正式釋出了0.1.0 GA版本:https://github.com/CoreWCF/CoreWCF/releases/tag/v0.1.0 ,這個版本號雖然是0.1,但是它是可以投入生產的版本,而且是跨平臺的,支援LInux部署WCF,當前僅支援http 和 net.tcp:

在CoreWCF 的部落格上詳細介紹 經過21個月的公開開發,CoreWCF首次進入GA釋出。微軟和 AWS 的主要貢獻者使得專案取得成功,並首次釋出。在 ASP.NET Core之上構建 WCF 涉及許多根本性變革,但我們致力於提供出色的開發人員體驗。這是支援企業 WCF 服務轉移到任何雲平臺上託管的 CoreWCF 的重要里程碑。

CoreWCF 基本架構的根本性改變,使該專案可持續和跨平臺。這些變化有2個主要主題:刪除非同步程式設計模型 (APM) API和程式碼,並刪除直接的本地系統呼叫 和 IO 程式碼。APM 程式設計模式效能速度方面非常快,可以擠出每一個最後一點的效能,但代價是程式碼的可維護性。WCF 將 APM 使用到極限,程式碼庫卻可能很難維護。對於一個社群擁有和支援的專案可維護性是一個高度優先事項,而不是速度,速度在合理範圍之內就可以了,CoreWCF 還切換到採用 ASP.NET  Core中介軟體模式的請求響應管道模型,CoreWCF甚至不知道什麼是Socket ,但支援NetTcp,ASP.NET Core為CoreWCF處理所有這些問題。它只是讀和寫到pipe 或streams。這意味著 CoreWCF 開發人員不必編寫程式碼處理特定平臺上一些晦澀難懂的場景 。這使得程式碼更簡單,但需要大量重構和重寫 WCF ,因此花了21個月的時間才完成可用於生產的 0.1.0 版本。,

CoreWCF 使用示例程式碼:https://github.com/CoreWCF/CoreWCF/tree/main/src/Sam