Redis算法的使用机器巧妙

    image.png
    使用结束时间的时间戳减去开始时间的时间戳,作为随机因子。
    如果系统时间小于令牌时间,说明没有抽奖,令牌左侧入队列。
    如果开始时间和结束时间特别短,放回去的时候,时间错乱了。导致开始没有中奖,最后集体出现。

    令牌设计技巧

    加入活动时间太短,奖品数量太多,那么极有可能产生的时间戳发送重复。 解决技巧:额外在附加一个随机因子作为令牌,抽象时,抽中的令牌/1000,还原真实的时间戳。