一.nop事件機制簡介
應用場景:客戶支付成功后,需要發(fā)送短信、郵件告知客戶訂單支付成功(短信、郵件由不同模塊實現)
實現方法: 1.定義支付成功OrderPaidEvent事件。
2.定義短信,郵箱兩個消費者共同監(jiān)聽OrderPaidEvent事件,并實現相關業(yè)務。
3.當客戶支付成功后生產者發(fā)送OrderPaidEvent事件。
4.消費者接收到OrderPaidEvent事件后,短信和郵箱消費者分別執(zhí)行自己的業(yè)務。
nop事件機制使用到“生產者/消費者”模式。生產者只負責發(fā)布事件,并不需要關心誰來處理,相反消費者只用來處理事件。那生產者和消費者是如何進行關聯的呢?nop實現是非常簡單的,通過泛型來定義一個事件類,如果生產者和消費者都使用同一個事件類,那么就關聯到一起了稱之為訂閱。負責實現事件機制的部分稱之為緩沖區(qū),緩沖區(qū)的作用是通過解耦的方式實現消息機制。生產者和消費者是一對多的關系。下圖簡單介紹下生產者消費者關系。
二.nop事件相關接口
生產者接口:Nop.Services.Events.IEventPublisher
網友評論