抢单设计

  1. 系统启动,将当天的Express加入到Redis,设置过期时间一天
  2. 订单更新,将之前的key过期,插入一条新的
  3. 有人抢单,添加分布式锁,将该key过期
  4. mq更新mysql,创建订单

秒杀设计

  1. 系统启动,将商品信息加入redis

  2. 加Redis分布式锁,对Redis数量进行更新,如果小于0返回失败,如果大于0进行下一步

  3. 将消息发送到mq,更新mysql,创建订单

  4. 出现的问题:

    1. 如何保证发送成功

    2. 消费者失败了怎么办

分布式事物

  1. CAP原则,不可能同时满足

    1. 一致性Consistentcy
    2. 可用性 Availablility
    3. 分区容错性 Partition tolerance
  2. BASE理论
    1. 基本可用 Basically Available
    2. 软状态Soft State
    3. 最终一致性 Eventually consistent
  3. 解决方案
    1. 两段式提交2PC
    2. TCC 补偿事物
    3. 本地消息表
    4. RocketMQ

秒杀和抢单系统的设计思路相关推荐

  1. 考试/答题系统的设计思路

    基于SpringBoot实现的考试/答题系统,由于这是从一个大项目中截取的部分功能,具体的业务代码非常复杂就不列出了,这里主要介绍系统的设计思路,可作为课设或毕设的参考 数据库设计 实体类设计 tes ...

  2. 爬虫与反爬虫系统的设计思路与策略

    爬虫与反爬虫系统的设计思路与策略 常用的爬虫工具 01 封IP 02 封User-Agent 03 封Cookie 04 javascript渲染 05 验证码验证 06 ajax异步传输 07 图片 ...

  3. 秒杀系统架构设计思路

    1 .秒杀业务分析 正常电子商务流程 (1)查询商品:(2)创建订单:(3)扣减库存:(4)更新订单:(5)付款:(6)卖家发货 秒杀业务的特性 (1)低廉价格:(2)大幅推广:(3)瞬时售空:(4) ...

  4. 7系统内部系统组件禁止休眠_海康监控系统平台设计思路(二)

    设计思路 系统设计过程中充分考虑了各个子系统的信息共享要求,对各子系统进行结构化和标准化设计,通过系统间的各种联动方式将其整合成一个有机的整体,使之成为一套整体的.全方位的综合安防系统,达到人防.物防 ...

  5. 一个智能客服系统的设计思路

    一.目标 随着移动互联网发展,许多线下服务都搬到了网络平台上,人们也越来越习惯于通过互联网来获得服务,这大大节省了时间,提高了办事效率.但线上服务面向的用户群体大,同类问题多,这就要求互联网平台提高服 ...

  6. 仿真3. 仿真系统的设计思路

    最近跟深城交的一位大佬(也是我刚入职我司时的导师)交流,天马行空的探讨了一些城市交通仿真系统的设计问题,使我对离散事件仿真系统的了解更深刻,且偶有奇思妙想,特此记录. 1. 城市交通仿真一般分为微观. ...

  7. 一个折扣券发放系统的设计思路

    一个软件系统的开发绝对不是单纯的编码,甚至可以说编码是最不重要的环节(但它是必不可少的环节),就像在建房子的时候,码砖虽然必不可少,但绝对不是最重要的,这也是戏称程序员为码农的原因吧. 那么什么是重要 ...

  8. 秒杀抢单系统软件架构优化思路

    文章目录 一.秒杀业务为什么难做 二.优化方向 三.常见秒杀架构 四.各层次优化细节 第一层,客户端怎么优化(浏览器层,APP层) 第二层,站点层面的请求拦截 第三层,服务层来拦截(反正就是不要让请求 ...

  9. 高并发场景下秒杀系统的设计思路

    点击上方「蓝字」关注我们 1. 概述 秒杀系统之所以难做,是因为在极短的时间内涌入大量的请求,来同时访问有限的服务资源,从而造成系统负载压力大,甚至导致系统服务瘫痪以及宕机的可能.本文会介绍秒杀系统中 ...

最新文章

  1. PL0编译器TurboPascal版再现时间:2009-07-20 17:24:49来源:网络 作者:未知 点击:52次
  2. maven重新指定仓库存储路径
  3. 搜索训练1 [8数码问题]
  4. 删了自己写的代码?判刑10个月!
  5. 20190520算法题存档
  6. java utf8 简繁转换 类库_在Java中进行中文繁体简体转换,基于OpenCC(Open Chinese Convert)方案...
  7. PythonDay7
  8. 【Android】EasyClient与EasyCamera的移植学习
  9. wifi共享精灵2014最新版 v04.25.001 官方正式版
  10. 我要继续坚持梦想,把我的demo变成产品!
  11. MongoDB Master-Slaver集群部署
  12. Nacos注册中心AP架构源码(Distro)下篇
  13. Maven deploy项目到私服报错
  14. CentOS 8 清除 DNS 缓存的方法
  15. PHP操作doc文档之PHPWord0.6.1
  16. 开发自己的操作系统(Hobby OS-deving)
  17. 谈谈IT公司员工猝死和IT公司的加班文化
  18. rsa2048加密算法c语言代码,rsa加密算法c语言代码
  19. [学习笔记]操作系统(三)先到先得调度
  20. 几个线段树板子(区间加/区间加与乘)

热门文章

  1. Google云主机利用Docker镜像搭建各类服务器的实战教程
  2. 将最小的数与第一个数对换,把最大的数与最后一个数对换
  3. c++语言程序设计(郑莉)学习笔记(详细中的详细)
  4. android 客户端使用service处理用户名和密码验证,android透过webservice验证用户
  5. 信用卡里预借现金、已出账单、未出账单等的还款顺序
  6. Zookeeper单例搭建与伪集群搭建
  7. 计算机考证去哪个软件报名
  8. AES加密解密(ECB模式)
  9. 游戏分类、介绍与热点探索
  10. html轮播图速度加快,jQuery按需加载轮播图(web前端性能优化)