后端架构如何设计?可以动态添加活动或任务,才不至于影响主业务。

悲惨的大爷
  • 2.1k

比如一个任务是连续登陆10天赠送100块钱。
如果这个活动任务的逻辑写到登陆模块,那以后这个任务下架了,还要修改代码。
那如何设计才能动态管理这些任务逻辑呢?

===========

任务如何拆分成一个个独立模块?

回复
阅读 2.8k
5 个回答

观察者模式, 事件触发

在登录那添加个代码, 触发事件.

事件可以保存在数据库里, 也可以保存在文件里.

基于事件埋点的形式。
登录的时候触发一下login事件。

如果需要处理这个任务,就监听login事件。
不需要处理这个任务,就不监听

使用消息队列的方式。登录成功后,往队列中丢一个登录成功的消息。
活动上线期间,对队列中的登录消息进行消费;
活动下线后,可以不消费队列中的登录消息。

可以采用消息订阅的方式,登陆后发送消息,活动模块收到消息后处理活动的逻辑,如果活动下线了,登陆逻辑可以不用改。

如果你熟悉 钩子的话 , 那你很清晰了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏