
分布式
文章平均质量分 94
悟空聊架构
公众号:悟空聊架构,7 年一线互联网经验,全栈工程师,手写了 PMP 刷题小程序和 Java刷题小程序。超爱图解底层原理。
公众号:悟空聊架构
展开
-
B 站崩了,总结下「高可用」和「异地多活」
B 站挂了,聊聊高可用和异地多活你好,我是悟空。一、背景不用想象一种异常场景了,这就真实发生了:B 站晚上 11 点突然挂了,网站主页直接报 404。手机 APP 端数据加载不出来。23:30 分,B 站做了降级页面,将 404 页面跳转到了比较友好的异常页面。但是刷新下页面,又会跳转到 404 页面。22:35 主页可以加载出数据了,但是点击动态还是会报 502点击某个视频,直接报 404。2021-07-14 02:00 之后 B 站开始逐渐恢复。二、什么原因今日凌晨 2原创 2021-07-14 15:12:09 · 6292 阅读 · 18 评论 -
浅析「扣减库存」的方案设计
浅析「扣减库存」的方案设计你好,我是悟空。上篇谈到了秒杀设计的方案《》今天我们来探讨下扣减库存的方案。生活中,我们总是用各种电商 APP 抢购商品,但是库存数是很少的,特别是秒杀场景,商品可能就一件,那如何保证不会出现超卖的情况呢?一、扣减库存的三种方案1.1 下单减库存用户下单时减库存优点:实时减库存,避免付款时因库存不足减库存的问题缺点:恶意买家大量下单,将库存用完,但是不付款,真正想买的人买不到1.2 付款减库存下单页面显示最新的库存,下单时不会立即减库存,而是等到支付时才会原创 2021-06-11 08:58:04 · 454 阅读 · 1 评论 -
请警惕搜索引擎的三大坑
搜索引擎的坑ES 搜索引擎系列文章:本文主要内容如下:搜索引擎现在是用得越来越多了,比如 日志系统用到的 ELK 中的 E 就是 搜索引擎 Elasticsearch(简称 ES)。那对于搜索这种技术来说,最看重的是搜索的结果的准确性和搜索的响应时间。ES 的准确性可以通过 倒排索引算法来保证,那响应时间就需要磁盘或缓存来支持了,那么磁盘和缓存会带来哪些坑呢? ( 其实不论是分布式的,还是单机模式下的搜索引擎都会遇到这个问题。 )一、ES 慢查询之坑Elasticsearch 是现如今用的最广原创 2021-05-25 23:29:48 · 508 阅读 · 10 评论 -
紫霞仙子:顶得住区块链的十二连问吗?
最近更新了八篇分布式的文章,准备写下第九篇的时候,发现跟区块链关系非常紧密,于是就先写一篇区块链的科普文章吧。紫霞仙子:听说你最近在学区块链,给我讲讲呗~一、用大白话说下什么是区块链?1.我是至尊宝,我爱紫霞仙子你,在这个时间,这个地点,我对紫霞你说:至尊宝爱紫霞一万年。2.现在我把这句话写在了纸上:3.但是如果我把这张纸交给紫霞你,你又怕我反悔。而如果我把这张纸交给月老,我又怕月老可能会修改内容,而改成只爱你一年。4.我为了防止类似事情发生,就把这些这爱情真言,告诉了师父、二师弟悟能原创 2021-03-09 13:47:30 · 379 阅读 · 0 评论 -
太上老君的炼丹炉之分布式 Quorum NWR
太白金星:听闻老君最近在练神丹妙药,可否与我一讲?太上老君:老白啊,我最近在练六颗丹药:两颗延年丹、两颗健步丹、两颗恢复丹。太白金星:那这三个八卦炉定是练这三件法宝的了?太上老君:正是正是。而且对于相同的丹药,功效和大小还得完全一样。一、三个炼丹炉怎么分配的太白金星:老君,你的八卦炉怎么分配的啊?让我们揭开老君的炼丹炉,看看六颗丹药是怎么分配的。首先我们是很容易猜到丹炉是怎么分配炼丹的:一号丹炉炼两颗延年丹。二号丹炉炼两颗健步丹。三号丹炉炼两颗恢复丹。那如此分配会有什么.原创 2021-03-04 21:46:05 · 2753 阅读 · 6 评论 -
病毒入侵:全靠分布式 Gossip 协议
太可怕,一个懂分布式的病毒!一、背景我是一个小病毒,其他病毒都叫我小 B,我长得就是下图这个样子了。我现在已经有 100 nm 大小了,我还有很多触角,人类把我的触角称为冠,所以给我起了个学术名:冠状病毒。对于这个学术名,我一直不满意,怎么能用外貌来取名呢,这是以貌取毒。我出生在一个动物身上,每到晚上,这只动物就到处觅食,它最喜欢的就是在森林中觅食,但最近森林的范围急剧减少,它不得不到人类居住的城市来觅食,看着五颜六色的灯光,我如痴如醉。这只蝙蝠携带了 100 多种病毒,比如埃博拉病毒、MER原创 2021-02-24 11:30:27 · 637 阅读 · 2 评论 -
韩信大招:一致性哈希
这是悟空的第 78 篇原创文章。本文已收录 Github:https://github.com/Jackson0714/PassJava-Learning韩信点兵的成语来源淮安民间传说。常与多多益善搭配。寓意越多越好。我们来看下主公刘邦和韩信大将军的对话。刘邦:“你觉得我可以带兵多少?”韩信:“最多十万。”刘邦不解的问:“那你呢?”韩信自豪地说:“越多越好,多多益善嘛!假如刘邦现在给了韩信 1000 个士兵,需要大致均匀分成三组。士兵的编号是 6 位数,从 1-100000 随机分配.原创 2021-02-02 15:14:30 · 397 阅读 · 1 评论 -
用动图讲解分布式 Raft
动图讲解分布式 Raft一、Raft 概述Raft 算法是分布式系统开发首选的共识算法。比如现在流行 Etcd、Consul。如果掌握了这个算法,就可以较容易地处理绝大部分场景的容错和一致性需求。比如分布式配置系统、分布式 NoSQL 存储等等,轻松突破系统的单机限制。Raft 算法是通过一切以领导者为准的方式,实现一系列值的共识和各节点日志的一致。二、Raft 角色2.1 角色跟随者(Follower):普通群众,默默接收和来自领导者的消息,当领导者心跳信息超时的时候,就主动站出来,推荐自己原创 2021-01-26 15:01:53 · 533 阅读 · 0 评论 -
诸葛亮 VS 庞统,拿下 Paxos 共识算法
前言分布式确实是一个有趣的话题,只要你留心观察,分布式在生活中无处不在。悟空哥最开始学习分布式是从一篇非常用心写的技术征文开始的,而且这篇文章获得了征文第一名,在此感谢掘金社区提供的平台。想学习的同学可以点这个文章链接:《这三年被分布式坑惨了,曝光十大坑》前两讲主要是讲解分布式理论,涉及到了分布式的四大理论。拜占庭将军问题:《用三国杀讲分布式算法,舒适了吧?》BASE、CAP、ACID:《用太极拳讲分布式理论,舒服!》从这篇开始,将会讲解分布式的八大协议/算法。本篇主要讲解 Paxos 共识算法原创 2021-01-13 21:31:02 · 474 阅读 · 1 评论 -
用太极拳讲分布式理论,真舒服!
背景:倚天屠龙记中赵敏郡主携带一帮高手围攻武当,武当派掌门张三丰被暗算,传了一套武功给张无忌用来对付赵敏的手下。这套武功就是太极拳。张三丰:无忌,你可记得多少招式?张无忌:我全忘了!张三丰:很好,你只要记住把玄冥二老打趴下就可以了。上篇用三国杀讲分布式中的拜占庭将军问题,还挺有意思的,这次我们用倚天屠龙记中的太极拳来聊下剩下的三大理论:CAP 理论ACID 理论BASE 理论太极拳的精髓:以柔克刚,刚柔并进,四两拨千斤,无招胜有招。我把 CAP 理论称作太极,ACID 理论.原创 2020-12-31 09:14:40 · 464 阅读 · 1 评论 -
用三国杀讲分布式算法,舒适了吧?
前言《三国杀》是一款热门的卡牌游戏,结合中国三国时期背景,以身份为线索,以卡牌为形式,益智休闲,老少皆宜。东汉末年,袁绍作为盟主,汇合了十八路诸侯一起攻打董卓。在讲解之前,我们先聊下分布式协议和算法整体脉络。现在很多开发同学对分布式的组件怎么使用都有一定经验,也知道 CAP 理论和 BASE 理论的大致含义。但认真去看分布式算法的真的很少,原因有三:担心算法过于复杂,所以花的时间很少。网上的资料能用大白话将分布式算法讲清楚的比较少。学习分布式算法没有一条清晰的路线。我会在后续的文章中原创 2020-12-11 15:54:44 · 443 阅读 · 0 评论 -
东汉末年,他们把「服务雪崩」玩到了极致(干货)
滚滚长江东逝水,浪花淘尽英雄。是非成败转头空。青山依旧在,几度夕阳红。– 来自《三国演义》本篇将会通过三国中的赤壁之战来讲述周瑜、黄盖和诸葛亮是怎么把服务雪崩玩到极致的。本文已收录到我的 Github,点击文末的阅读原文打开。给个Star吧~https://github.com/Jackson0714/PassJava-Learning赤壁之战话说东汉末年,曹操、孙权、刘备在赤壁市进行了一次争夺老大位置的大战,这就是有名的赤壁之战。一、还原赤壁之战曹操统一北方后,南下打败了刘备,..原创 2020-10-28 16:12:27 · 679 阅读 · 7 评论 -
我是一个秒杀请求,正在逃离这颗星球...
星球简介地点:β-410 星系,A-731电商星球。时间:新纪元 2036 年。星球简介:中文名:A-731电商星球外文名:A-731 Mall分类:行星公转周期:一年常驻用户:中间件工作者、各种请求。星球总历史:二十万年。星球危机我是一个秒杀请求,每天的工作就是将秒杀请求的数据运送给后端工作者。这天我在 Nginx 转发服务器上遇见了请求小空 ,我跟小空说有重要消息不方便在现在告诉他,下班再约,然后就都匆匆赶路了,因为我俩都要快速将请求数据运送到订单星.原创 2020-10-22 08:18:09 · 362 阅读 · 0 评论 -
别只会搜日志了,求你懂点原理吧(超详细)
本篇主要内容如下:前言项目中我们总是用 Kibana 界面来搜索测试或生产环境下的日志,来看下有没有异常信息。Kibana 就是 我们常说的 ELK 中的 K。Kibana 界面如下图所示:但这些日志检索原理是什么呢?这里就该我们的 Elasticsearch 搜索引擎登场了。我会分为三篇来讲解 Elasticsearch 的原理、实战及部署。 本篇是讲解 ES 的上篇。上篇: 讲解 Elasticsearch(简称ES)的原理、中文分词的配置。中篇: 实战 ES 应用。下篇: E原创 2020-10-09 16:14:38 · 6331 阅读 · 16 评论 -
这三年被分布式坑惨了,曝光十大坑
本篇主要内容如下:前言我们都在讨论分布式,特别是面试的时候,不管是招初级软件工程师还是高级,都会要求懂分布式,甚至要求用过。传得沸沸扬扬的分布式到底是什么东东,有什么优势?借用火影忍术看过火影的同学肯定知道漩涡鸣人的招牌忍术:多重影分身之术。这个术有一个特别厉害的地方,过程和心得:多个分身的感受和经历都是相通的。比如 A 分身去找卡卡西(鸣人的老师)请教问题,那么其他分身也会知道 A 分身问的什么问题。漩涡鸣人有另外一个超级厉害的忍术,需要由几个影分身完成:风遁·螺旋手里剑。这个忍术是靠三原创 2020-09-24 15:33:59 · 1208 阅读 · 0 评论