高并发秒杀疑惑

看了很多高并发的文章和秒杀文章,我个人观点就是两个问题:
1、解决并发压力问题,这是系统性问题,涉及架构,布局,网络等综合性很强
2、解决公平竞争,不超卖问题,这是技术性问题,需要熟悉数并发编程,数据库,缓存等技术问题

如果纯解决高并发 那就是 为了化解压力,让服务器正确,准确运行, 服务器负载, java多线程 和 分布式事务锁 就可以了,这样一秒钟有百万访问量 通过这方案 也能化解 ,使请求有序的执行,

疑问:
如果高并发 ,是对同一资源 瞬间高并发查询和更新,那问题来了,上面的架构能化解 服务压力,那排队 也得排很久(用锁机制),就达不到 秒杀感觉,个人觉得秒杀的 概念 应该是从 应用层顺序截取前 指定数量的请求,到数据库或者缓存 完成秒杀,比如 库存就100个,实现秒杀,就通过截取 前100个请求 到数据库完成秒杀,后请求的 就无效了,返回 “速度过慢” 的提示 .

如果一亿个库存,那取前一亿个请求 这过程必须 在应用端 完成 请求截取,同时后台 需要将库存分散,用多服务器,多线程完成 库存更新,否则,即使数据,逻辑,和压力都没问题,那排队 也得排很久,就像 一亿个人 排队到一个家店了 买东西 ,
一亿个人抢 同一种资源,要么用锁机制排队(算不上秒杀),要么 用多线程真实的抢,可这种抢 怎么管理和监控资源正确 ,在多线程有个原子操作,可以实现,但我还是理解不了这逻辑,如何用 人抢资源来说清楚,请大神指导

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值