鍍金池/ 問答/Java  PHP  Python/ 后端架構(gòu)如何設(shè)計?可以動態(tài)添加活動或任務(wù),才不至于影響主業(yè)務(wù)。

后端架構(gòu)如何設(shè)計?可以動態(tài)添加活動或任務(wù),才不至于影響主業(yè)務(wù)。

比如一個任務(wù)是連續(xù)登陸10天贈送100塊錢。
如果這個活動任務(wù)的邏輯寫到登陸模塊,那以后這個任務(wù)下架了,還要修改代碼。
那如何設(shè)計才能動態(tài)管理這些任務(wù)邏輯呢?

===========

任務(wù)如何拆分成一個個獨立模塊?

回答
編輯回答
任她鬧

使用消息隊列的方式。登錄成功后,往隊列中丟一個登錄成功的消息。
活動上線期間,對隊列中的登錄消息進行消費;
活動下線后,可以不消費隊列中的登錄消息。

2017年12月31日 15:00
編輯回答
憶往昔

可以采用消息訂閱的方式,登陸后發(fā)送消息,活動模塊收到消息后處理活動的邏輯,如果活動下線了,登陸邏輯可以不用改。

2018年6月3日 13:18
編輯回答
愚念

基于事件埋點的形式。
登錄的時候觸發(fā)一下login事件。

如果需要處理這個任務(wù),就監(jiān)聽login事件。
不需要處理這個任務(wù),就不監(jiān)聽

2017年6月9日 12:18
編輯回答
拮據(jù)

如果你熟悉 鉤子的話 , 那你很清晰了

2018年1月5日 00:24
編輯回答
祈歡

觀察者模式, 事件觸發(fā)

在登錄那添加個代碼, 觸發(fā)事件.

事件可以保存在數(shù)據(jù)庫里, 也可以保存在文件里.

2017年4月30日 09:35