美文网首页
秒杀系统优化

秒杀系统优化

作者: 榷奕 | 来源:发表于2019-10-16 23:08 被阅读0次

1. 在sql加上判断防止数据边为负数

这里面有一个Check约束,可以保证某一列的值一定要大于零什么的。

2. 数据库加唯一索引防止用户重复购买

每一次特定的秒杀都有秒杀订单表,在这个秒杀表里面,把用户id设成唯一索引(索引的一种并不是主键)
(从这里可以看出来Mysql的表级约束几乎啥也不会,这个东西就没学过,唉)

3. redis预减库存减少数据库访问

系统刚开始初始化的时候,读取所有商品数量,然后放在Redis里面做缓存,永久缓存或者撑过秒杀的这几天。
然后再访问的时候自然就是减Redis里面的缓存,就不用去减数据库了。

4. 请求先入队列缓冲,异步下单,增强用户体验

这一步还是正常,减数据库库存,生成订单插入,建立一个事务。
如果上一步redis成功了,这一步失败,那就不管,卖不出去就剩着呗,干嘛非要都卖出去。

相关文章

  • 秒杀系统架构优化思路

    《秒杀系统架构优化思路》 上周参加Qcon,有个兄弟分享秒杀系统的优化,其观点有些赞同,大部分观点却并不同意,结合...

  • 秒杀系统优化

    秒杀问题: 多人集中时间读写同一份库表,读写冲突,锁严重 优化思路 将请求尽量拦截在系统前端 利用缓存 优化细节 ...

  • 秒杀系统优化

    1. 在sql加上判断防止数据边为负数 这里面有一个Check约束,可以保证某一列的值一定要大于零什么的。 2. ...

  • 秒杀项目2.0

    基于 SpringBoot+Mybatis+Redis+RabbitMQ 秒杀系统 项目特点 系统极致优化浏览器缓...

  • 优秀的秒杀解题思路

    秒杀系统优化方案[https://www.cnblogs.com/xiangkejin/p/9351501.html]

  • Java 高并发秒杀-系统优化(重要)

    章节目录 秒杀系统请求流程图 系统性能瓶颈分析与优化思路 1.秒杀系统请求流程图 详情页与动态请求的关系 2.系统...

  • 秒杀系统架构优化思路

    文章来自于:秒杀系统架构优化思路 秒杀业务为什么难做 im系统,例如qq或者微博,每个人都读自己的数据(好友列表、...

  • RabbitMQ如何在秒杀项目中翻江倒海

    摘要:本篇博文是“Java秒杀系统实战系列文章”的第十七篇,我们将继续秒杀系统的优化之路。在本篇文章中我们将基于R...

  • 用Redis轻松实现秒杀系统

    秒杀系统的架构设计 秒杀系统,是典型的短时大量突发访问类问题。对这类问题,有三种优化性能的思路: 写入内存而不是写...

  • 用Redis轻松实现秒杀系统

    秒杀系统的架构设计 秒杀系统,是典型的短时大量突发访问类问题。对这类问题,有三种优化性能的思路: 写入内存而不是写...

网友评论

      本文标题:秒杀系统优化

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