在zookeeper
中,咱們能夠監控特定的znode
節點。當節點發生變化時,便會給監控方發送事件通知。這有點相似於發佈-訂閱模式,拿Redis
來講,當咱們發佈新消息時,Redis
便會通知訂閱者。node
從設計模式上來講,事件通知屬於觀察者模式。當被觀察者發生某種變化時,通知觀察者,觀察者對通知做出響應。設計模式
在業務上,能夠將事件通知獨立成一個微服務:事件中心。本質上,kafka
能作什麼,事件中心就能作什麼。記得一句話,大概的意思的是:任何問題,都能經過抽象一箇中間服務層來解決。微服務
事件中心,主要包括兩部分:設計
拿客戶端冷啓動的事件爲例。咱們須要在用戶打開APP
的時候,作一些特殊的業務邏輯(這種狀況應該挺常見的)。事件中心的處理流程包括:代理
事件標識
事件中心充當了代理的角色,由於有了事件中心做爲中間層,發佈事件的邏輯和消費事件的邏輯能夠並行開發。同時,若是有別的業務也須要關注客戶端冷啓動事件,在事件中心訂閱這個事件就能夠了。code