任务
2018-03-08 19:24:40 5 举报
任务
作者其他创作
大纲/内容
当前时间是否大于显示时间,且相差5分钟之内
1.更新巅峰PK主表数据2.清除Hash数据
topPKStatus==0
红包任务
读取后台配置
showStatus==1
报名阶段任务
报名结束时间+180s
发送显示IM(app)
等于1
两种情况下发晋级长连接: 1.已经拿到下一轮的所有结果 2.本轮正常结束时间+60s以后还未拿到所有结果,则只给拿到的结果下发晋级长连接
胜利人数=1
发红包规则:1)\t当胜的人只有一个人时,在60s的时候直接发红包2)\t当胜的人大于2个时,在下发晋级长连接15s后发长连接
计算nextRoundReadyStartTime=now+pkSeconds+punitiveSeconds+延迟5s
立即发红包
查询用户近7天收礼金额(熊天,根据报名人数匹配算法
修改主表pk开始时间
读取Hash对象
胜利的人下发晋级IM(app)
判断Hash是否存在
nownextRoundPkStartTime
nownextRoundReadyStartTime+55s
pk阶段任务
是
topPKStatus==1
改为结束显示showStatus =0
任务2开始
nownextRoundReadyStartTime+165s
否
取memcache缓存
大于1
Hash:{topPkIdshowStartTimeshowEndTimeshowStatus(1显示中,0结束显示)applyStartTimeapplyEndTimepkSecondspunitiveSecondsallowJoinCountcurrentJoinCount topPkStatus (0未开始报名,1报名中,2准备pk中,3pk中 ,4结束),currentRoundNumber (pk轮次)currentRoundMemberCount (pk轮次参与人数)currentRoundWinMemberCount(pk轮次晋级人数)nextRoundPKStartTimenextRoundReadyStartTimepkWinTime(下发晋级长连接的时间)}
pk中topPkStatus=3
发送IM(app)强连
变更nextRoundPKStartTime=now+180s
任务3开始
修改主表实际报名人数
即本轮正常结束时间+60s
任务1开始
结束
nowapplyStartTime
当前时间大于断开连接时间+15s且小于下一轮pk开始倒计时15s
准备中topPkStatus==2
加锁
nownextRoundReadyStartTime+70s
查询逃跑的人:1.是否取消报名2.直播是否已结束
nownextRoundReadyStartTime
即本轮正常结束时间+惩罚时间+60s
变更为PK准备中topPkStatus=2
小于1
1.数据落地数据库巅峰之战主表2.保存巅峰PK Hash对象showStatus==1
改为pk准备中topPkStatus=2
nowshowEndTime
end
currentRoundNumber自增1,修改currentRoundMemberCount
变更nextRoundPkStartTime=now+180s,修改本轮参赛人数为胜利的人
变更为pK中topPkStatus=3
nowapplyEndTime
改为报名中topPkStatus==1
现在时间+下场pk时间+惩罚时间+5s
0 条评论
回复 删除
下一页