真·百万并发的业务,是如何部署实现均衡负载的?

2020-03-21 22:07:45 +08:00
 black11black

如题,很惭愧我没有部署过这种业务,纯粹想了解学习一下。

根据舅舅党的消息,19 年双 11 淘宝峰值 qps 在 340 万左右,考虑到支付宝的 query 逻辑还相当复杂,我是感觉挺人类奇迹的,那么到底是如何实现的呢?

按照我粗浅的推测,我感觉均衡负载目前可以分几个层级(暂不考虑 CDN,只考虑源服务器,以我粗浅的知识不太清楚这种有回源的服务挂 CDN 最终能否达到加速效果),

=====================================================================

大佬给开开眼,想见识一下真正的工业前沿高科技是啥样的

8508 次点击
所在节点    Java
49 条回复
1194129822
2020-03-22 22:16:13 +08:00
你小瞧了 money 的力量,双 11 的压力主要是凌晨大规模的 OLTP, 但是下单之后并不能马上退款,减轻了一些场景压力。我在一篇博客上看到微信开发分享的红包架构,一代面向用户开放的的时候,过于火爆,没有什么架构设计直接所有压力全在 mysql 数据库,后来增加几千个节点硬撑。后来重构引入缓存和内存计算。所以所谓高并发,当遇到这个瓶颈之后,自然有解决办法。只要有钱,没什么解决不了的。12306 这种网站,事务要求太高,所以几乎全是内存计算,单个节点的内存单位都是 TB 级。
akira
2020-03-22 22:24:55 +08:00
几百并发都能搞死一片人的。。。
lihongming
2020-03-23 02:49:10 +08:00
@akira 同意,百万级的日访问量也就是 10-30 并发,绝大多数企业没机会体验百级以上的并发。

偶尔做个活动,搞个楼上说的那种用随机数决定过不过的伪并发也就糊弄过去了。真正的高并发场景太少了
IMCA1024
2020-03-23 09:37:48 +08:00
@lihongming redis 那个我去搜了下 看到某乎一主题下面回答的 好像还挺有道理

聿明 leslie
蚂蚁金服 OceanBase 工程师:

18 年的回答
减库存的场景中阿里没有听说用 redis 的,都是直接写数据库,减库存的瓶颈主要是来自于一个比较热的商品,大量并发的去抢,比如热门商品的秒杀,并发写同一个商品会带来大量的热点行锁冲突,导致 TPS 下降,阿里优化的 MySQL 分支( alisql )和 OB0.5 使用的策略都是用一个缓冲队列,如果不同事务想加锁同一行,就将这批事务去排队,避免大量争锁的代价,OB1.0 版本的思路要做得更彻底一些,提前释放行锁,这个做法的难点在于要分析出事务的依赖关系,行锁提前释放了,不能破坏事务隔离性

作者:聿明 leslie
链接: https://www.zhihu.com/question/268937734/answer/351683594
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
Aresxue
2020-03-23 10:39:34 +08:00
CDN -> DNS -> 硬件负载如 F5 > 软件负载如 nginx 和 lvs -> 应用负载如 dubbo 的请求分发(默认随机)和 SpringCloud 的 Ribbon
salmon5
2020-03-23 12:52:34 +08:00
可以,1 个程序员顶 1000 个程序员。
stevenkang
2020-03-23 16:25:47 +08:00
逢山开路,遇水架桥,水到渠成。
ArtIsPatrick
2020-03-23 19:25:07 +08:00
你要知道,因为瞬时流量过大,许多秒杀的实现并不是最先点按钮的人抢到,而是随机的让一部分人抢到。有时候前端甚至都没请求后端的接口就告诉你秒杀已经结束了。所以秒杀其实本质上和抽奖差不多。双十一下单的时候提示当前下单人数过多也是同理,它只请求了一个速度极快的仅返回当前服务器负载情况的接口,并没有请求下单接口。
fcten
2020-03-23 20:12:42 +08:00
关键词:分布式系统。负载均衡只是其中的一小部分。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://tanronggui.xyz/t/654956

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX