一.nop事件機(jī)制簡(jiǎn)介
應(yīng)用場(chǎng)景:客戶支付成功后,需要發(fā)送短信、郵件告知客戶訂單支付成功(短信、郵件由不同模塊實(shí)現(xiàn))
實(shí)現(xiàn)方法: 1.定義支付成功OrderPaidEvent事件。
2.定義短信,郵箱兩個(gè)消費(fèi)者共同監(jiān)聽(tīng)OrderPaidEvent事件,并實(shí)現(xiàn)相關(guān)業(yè)務(wù)。
3.當(dāng)客戶支付成功后生產(chǎn)者發(fā)送OrderPaidEvent事件。
4.消費(fèi)者接收到OrderPaidEvent事件后,短信和郵箱消費(fèi)者分別執(zhí)行自己的業(yè)務(wù)。
nop事件機(jī)制使用到“生產(chǎn)者/消費(fèi)者”模式。生產(chǎn)者只負(fù)責(zé)發(fā)布事件,并不需要關(guān)心誰(shuí)來(lái)處理,相反消費(fèi)者只用來(lái)處理事件。那生產(chǎn)者和消費(fèi)者是如何進(jìn)行關(guān)聯(lián)的呢?nop實(shí)現(xiàn)是非常簡(jiǎn)單的,通過(guò)泛型來(lái)定義一個(gè)事件類,如果生產(chǎn)者和消費(fèi)者都使用同一個(gè)事件類,那么就關(guān)聯(lián)到一起了稱之為訂閱。負(fù)責(zé)實(shí)現(xiàn)事件機(jī)制的部分稱之為緩沖區(qū),緩沖區(qū)的作用是通過(guò)解耦的方式實(shí)現(xiàn)消息機(jī)制。生產(chǎn)者和消費(fèi)者是一對(duì)多的關(guān)系。下圖簡(jiǎn)單介紹下生產(chǎn)者消費(fèi)者關(guān)系。
二.nop事件相關(guān)接口
生產(chǎn)者接口:Nop.Services.Events.IEventPublisher
延伸閱讀
學(xué)習(xí)是年輕人改變自己的最好方式
- ssh框架 2016-09-30
- 阿里移動(dòng)安全 [無(wú)線安全]玩轉(zhuǎn)無(wú)線電——不安全的藍(lán)牙鎖 2017-07-26
- 消息隊(duì)列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標(biāo)分割】 2017-07-26
- 詞向量-LRWE模型-更好地識(shí)別反義詞同義詞 2017-07-26
- 從棧不平衡問(wèn)題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實(shí)現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動(dòng)安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來(lái)看看(二) 2017-07-26