grab_sub_flow
2015-11-24 20:52:20 0 举报
`grab_sub_flow` 是一个功能或方法,用于从主流程中提取并处理子流程。在复杂的工作流程中,通常存在多个相互关联的子流程,而 `grab_sub_flow` 可以将这些子流程独立出来,以便对其进行更详细的分析和优化。这种方法可以提高整体流程的效率和可维护性,同时也有助于更好地理解各个子流程之间的关系。通过使用 `grab_sub_flow`,开发人员可以更容易地识别出潜在的性能瓶颈和改进点,从而为用户提供更优质的体验。总之,`grab_sub_flow` 是一种强大的工具,可以帮助我们更好地管理和优化复杂的工作流程。
作者其他创作
大纲/内容
是
redis.eval(\"LuaScript\
大于
当前计数是否大于主红包最大计数?
主红包状态是否有效
主红包状态改为失效
主红包类型是否为实时计算实时计算金额、拼接子红包ID
原子性增加主红包当前的计数
是否给予补偿?
进行补偿逻辑
失效
主红包类型是否为预生成
从入参中取得uid
检查此用户是否抢过此主红包?
存在
未过期
否
是否传入了合法的uid
从session中获取uid
不要去
是否成功?
不一致
根据event_id进行安全校验
要求
一致
未抢到
调用Redis A,进行实际抢占
将enc_main_hb_id从Redis中删除 ret = DEL enc_main_hb_id
已过期
ret是否大于0?即enc_main_hb_id在Redis是否存在?
校验mhb_info['scene_id']和mhb_info['event_id']是否与入参一致
小于
主红包是否过期
有效
从对应的预生成子红包队列里LPOP出一条子红包
是否抢占成功?
根据uid(取模)算出用户实际抢占的主红包的分片(sharding_id)
不存在
异常
存入,全分片维度的子红包被抢记录存入,该用户的抢红包记录存入,该主红包的被抢记录
获取主红包信息mhb_info
判断此event是否要求用户登录
0 条评论
回复 删除
下一页