美文网首页
如何设计一个秒杀系统

如何设计一个秒杀系统

作者: 躁动的中年大叔 | 来源:发表于2019-05-11 13:43 被阅读0次

    核心思想

    1. 尽可能的在上游将请求拦截,使得只有少量的请求能到数据库。
    2. 充分利用缓存

    详细过程

    1. 客户端拦截:当用户点击【秒杀按钮】后,将【秒杀按钮】置灰,避免多次点击。
    2. 上游服务请求过滤:用户可能使用脚本进行发起大量请求,这种情况下就需要做请求拦截,例如10s内只允许同一个用户的一个请求做后续处理,其他都直接返回“没有秒杀到”的结果。
    3. 入队操作: 经过步骤2后可能依然会存在大量的请求,这些请求进消息队列。
    4. 操作缓存:将删减库存在缓存系统(Redis)中进行,后续同步到数据库,这样数据库就没什么压力了。

    相关文章

      网友评论

          本文标题:如何设计一个秒杀系统

          本文链接:https://www.haomeiwen.com/subject/mrlxaqtx.html