在我们写业务逻辑中,总会碰到某些"自动更新"和"定时任务"的需求,那么,该如果实现这些需求呢?
一:分析需求
其实,大概的需求实现分为2种:"伪自动"和"真自动"
1:什么是伪自动呢?...场景(1):
有个优惠券功能,有失效时间,当到失效时间时,自动更新为失效状态,用户无法再次使用
场景(2):
有个大转盘功能,有自动上下架功能,当到上架时间时,自动上架,当到失效时间时,自动下架
这种需求...,完全可以
当用户查看该数据时,进行更新,
例如(1):
当用户查询,使用优惠券时,先更新状态,再进行取数据
例如(2):
当用户进入大转盘抽奖时,在大转盘获取奖品之前进行先将上架时间小于当前时间的更新为上架状态...真自动一般是和定时任务是挂钩的,没有定时任务,没有系统的自动运行,就不存在真自动
场景(1):
某个网站数据量过大,每天产生100万的浏览数据,后台管理员想看到某一天,每个小时段的数据统计,
常规做法:...直接取出某天的数据,根据小时进行分组统计
但是100万数据量过大,处理时间需要很长,管理员是无法忍受查看一次数据需要等待十几秒甚至几十秒的
场景(2):
某网站为了留住老客户,当老客户超过30天未登录网站时