動手造輪子:基於 Redis 實現 EventBus Intro 上次我們造了一個簡單的基於內存的 EventBus,但是如果要跨系統的話就不合適了,所以有了這篇基於 Redis 的 EventBus 探索。 本文的實現是基於 StackExchange.Redis 來實現 ...
動手造輪子:實現一個簡單的 EventBus Intro EventBus 是一種事件發布訂閱模式,通過 EventBus 我們可以很方便的實現解耦,將事件的發起和事件的處理的很好的分隔開來,很好的實現解耦。 微軟官方的示例項目 EShopOnContainers 也有在使用 EventBus 。 這里的 EventBus 實現也是參考借鑒了微軟 eShopOnContainers 項目。 Eve ...
2019-07-22 07:58 15 5270 推薦指數:
動手造輪子:基於 Redis 實現 EventBus Intro 上次我們造了一個簡單的基於內存的 EventBus,但是如果要跨系統的話就不合適了,所以有了這篇基於 Redis 的 EventBus 探索。 本文的實現是基於 StackExchange.Redis 來實現 ...
動手造輪子:實現一個簡單的依賴注入(一) Intro 在上一篇文章中主要介紹了一下要做的依賴注入的整體設計和大概編程體驗,這篇文章要開始寫代碼了,開始實現自己的依賴注入框架。 類圖 首先來溫習一下上次提到的 UML 類圖 服務生命周期 服務生命周期定義: 服務定義 服務注冊 ...
動手造輪子:實現一個簡單的依賴注入(零) Intro 依賴注入為我們寫程序帶來了諸多好處,在微軟的 .net core 出來的同時也發布了微軟開發的依賴注入框架 Microsoft.Extensions.DependencyInjection,大改傳統 asp.net 的開發模式 ...
動手造輪子:實現一個簡單的 AOP 框架 Intro 最近實現了一個 AOP 框架 -- FluentAspects,API 基本穩定了,寫篇文章分享一下這個 AOP 框架的設計。 整體設計 概覽 IProxyTypeFactory 用來生成代理類型,默認提供了基於 Emit 動態 ...
動手造輪子:實現簡單的 EventQueue Intro 最近項目里有遇到一些並發的問題,想實現一個隊列來將並發的請求一個一個串行處理,可以理解為使用消息隊列處理並發問題,之前實現過一個簡單的 EventBus,於是想在 EventBus 的基礎上改造一下,加一個隊列,改造成類似消息隊列的處理 ...
動手造輪子:實現一個簡單的依賴注入(三) --- 支持屬性注入 Intro 前面寫了幾篇依賴注入的文章,有興趣的小伙伴可以參考文末 Reference 部分中的鏈接,一直有小伙伴希望增加屬性注入的支持,昨天試着加了一下,思路很簡單,在獲取到服務實例之后檢查實例中有沒有需要注入的屬性,如果有 ...
動手造輪子:實現一個簡單的依賴注入(二) --- 服務注冊優化 Intro 之前實現的那版依賴注入框架基本可用,但是感覺還是不夠靈活,而且注冊服務和解析服務在同一個地方感覺有點別扭,有點職責分離不夠。於是借鑒 Autofac 的做法,增加了一個 ServiceContainerBuilder ...
動手造輪子:寫一個日志框架 Intro 日志框架有很多,比如 log4net / nlog / serilog / microsoft.extensions.logging 等,如何在切換日志框架的時候做到不用修改代碼,只需要切換不同的 loggingProvider 就可以了,最低成本的降低 ...