不活跃用户激活----送积分

为了让一些不活跃的用户能重新打开使用我们的APP,公司决定给这些超过10天都未启动app的用户发送邮件和通知,送给用户5000积分,来让用户活跃。
给用户发送邮件或者通知之后如果用户过了7天仍然没有活跃,再继续发送一次。
我们的方案是:

  1. 先圈出满足条件的用户,定义邮件发送的类型,设置好发送时间,存入待发送表中。
  2. 如果7天以内用户启动app(但是没有点击获取积分的链接)或者点击邮件或者推送通知中的链接获取到积分,则剩余的邮件不再发送;否则继续发送第二封等后续邮件。
  3. 期间,如果用户取消邮件订阅(不接收业务相关的邮件,系统邮件除外)都会取消剩余邮件的发送。
  4. 用户账号注销之后将消息发送到消息队列中,监听消息队列,异步处理数据。
  5. 用户点击邮件中的链接或者通知,调用积分系统服务,给用户增加积分,更新数据库中的剩余待发送邮件数据。

实现:

  1. 开启多个线程,每个线程每次去表中取10000条数据,使用redis做锁。
  2. 每个线程取到的数据再使用多个线程分段处理,入库
  3. 设置定时任务,定时取出满足条件的数据发送邮件,通知(使用aws)。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值