发表于: 2017-12-30 23:44:34
1 574
今天完成的任务
把定时任务调好了。
场景是后台设置一条定时消息,比如明天早上10点,向所有用户推送一条新产品开售的信息。存在数据库中的timer表中:


其中mid为消息id,push_at为消息推送的时间(时间戳),complete为该定时任务的完成状态(0-未完成,1-已完成)
设置的定时任务逻辑为:
0)每隔10秒执行一次以下操作
1)获取当前时间戳now;
2)查timer表,查所有状态为未完成且推送时间小于或等于now的记录,得到一个 tids(需要推送的消息的id集合);
3)根据 tids 获得 timerList,遍历 timerList 获得 mid(每条要推送消息的id);
4)获取数据库所用用户的id:uids
5)把uid,mid等信息插入用户消息关联表user_message中
代码实现:
.png)
遇到的问题
写了一个BUG,上面封装的方法里内嵌两个for循环,导致插入2次相同的记录。
收获
明天的计划
0、改Bug
1、重新搭服务器环境
2、写债权匹配
进度
评论