-
CDN内容分发网络:加速用户获取数据的系统,可以加速静态资源和动态资源
查看全部 -
秒杀实现架构
查看全部 -
常用的秒杀架构
查看全部 -
如何减少行级锁等待时间
查看全部 -
CDN:Content Delivery Network,即内容分发网络
WebServer一般不直接对外访问,之前都会放置Nginx,Nginx是一个集群化的,部署在多个服务器上,用来做我们的Http服务器。同时他还会把后端的Tomcat,Jetty来做反向代理。
Redis:做服务器端的缓存,利用Redis提供的API来达到热点数据的快速存取的过程。
MySql:借助MySQL事务来达到秒杀事务的一致性和完整性
查看全部 -
插入操作放在前面,插入操作就是把秒杀单,用户id,电话组成一个组件,这个组件冲突的概率并不是很高,因为秒杀单在前头,还有用户的电话,组成一个唯一键,这个时候的网络延迟和GC是可以并行的,这个时候再去拿update减库存的rowLocl行级锁
查看全部 -
啊啊啊啊啊
查看全部 -
啊啊啊啊啊啊啊啊
查看全部 -
AAAAAAAAA
查看全部 -
啊大大AF
查看全部 -
啊啊啊啊啊
查看全部 -
后端缓存就是redis或者membercache,比如调用查询秒杀,秒杀接口是否可以输出的时候,要判断时间,库存,结束时间等。这些都放到后端缓存,方便我们的业务控制。
通过java这样的客户端去控制事务,像starttransaction,update,insert,commit,rollback,这些都有网络延迟的交互。也就造成了同一行并发量不会很高,这是用MySQL解决秒杀问题的核心。
这个点只能是让MySQL去生抗这个流量,事务有个很大的优点(原子性,隔离性,一致性,持久性)。所以我们把sql组在一起放在MySQL端一次性完成。你只要告诉我结果就OK了。这个过程放在MySQL中会很快,MySQL能对一行一秒内做几万次操作。
查看全部 -
354325246
查看全部 -
412144
查看全部 -
35345234
查看全部
举报