秒杀系统
小白写程序
这个作者很懒,什么都没留下…
展开
-
如何设计一个秒杀系统 -- 动静分离方案
何为动静数据:所谓“动静分离”,其实就是把用户请求的数据(如HTML页面)划分为“动态数据”和“静态数据”。简单来说,动态数据和静态数据的主要区别就是看页面中输出的数据是否和URL,浏览者,时间,地域相关,以及是否含有Cookie等私密数据。比如:1、某一博客的文章内容不管是谁访问都是一样的,所以它就是一个典型的静态数据,但是它是个动态页面。2、我们访问淘宝的首页,每个人看到的页面都是不一...原创 2019-11-03 15:46:53 · 475 阅读 · 0 评论 -
如何设计一个秒杀系统 -- 架构原则
秒杀系统本质上就是一个满足大并发,高性能和高可用的分布式系统。架构原则:4 要 1 不要1、数据要尽量少首先是指用户请求的数据能少就少。请求的数据包括上传给系统的数据和系统返回给用户的数据。(网页)为什么?因为首先这些数据在网络上传输需要时间,其次不管是请求数还是返回数据都需要服务器做处理,而服务器在写网络时通常都要做压缩和字符编码,这些都非常消耗CPU,所以减少传输的数据量可以显著减少C...原创 2019-10-27 17:22:49 · 219 阅读 · 0 评论 -
如何设计一个秒杀系统 -- 关键点设计
来自许令波老师的课 – 设计一个秒杀系统。如何才能更好理解秒杀系统呢?秒杀其实主要解决两个问题:一个是并发读,一个是并发写。并发读的核心优化理念是尽量减少用户到服务端来“读”数据,或者让他们读更少的数据;并发写的处理原则也一样,要求我们在数据库层面独立出来一个库,做特殊的处理。另外,我们还需要对秒杀系统做一些保护,针对意料之外的情况设计兜底方案,以防止最坏的情况发生。从架构师角度来看,要想打...原创 2019-10-27 11:04:40 · 365 阅读 · 0 评论