家人们,昨晚 b 站炸了!昨晚十点左右, b 站网页出现五零二和四零四,手机端也跟着炸了。这个事情半个小时登上微博验收,登上验收的原因千奇百怪,这期间有人放酬是 b 站停电了,或者放火烧到了 b 站,不过被上海消防给辟谣了, 不过再也跟着崩了,是我万万没想到的一个字,绝十四号,也就是今天凌晨两点左右, b 站陆续恢复正常。 b 站官方给出的原因是机房故障。家人们,你们怎么看呢?评论区打出你的想法。
粉丝2298获赞1.8万


七月十三日晚间, b 一 b 一突发服务器撞击事故,主战 app 以及小程序都无法使用, b 站崩了话题一度登上微博热搜榜第一。对此,中国证券报记者致电 b 站,公司相关负责人回应记者, b 站 部分服务器机房发生故障,造成无法访问,技术团队随即进行了问题排查和修复,现在服务已经陆续恢复正常。美股 bvbl 也因为服务器档机事件一度跳水,截至美股收盘第一比例报收一百一十点三八美元,每股涨超百分之三。

哈喽,大家好,这里是易燃易爆料。七月十三日晚上,哔哩哔哩也就是避震的福气突然崩了,无法登录,无法观看视频,甚至连首页都登录不上去。 虽然经过几个小时的抢救,小破战终于恢复了正常,但是自诞生以来,特别是成立的最初几年,逼战的福气就不是特别稳定,逼战对福气的投入也是不惜巨资。 根据年报,二零一九年,避震的宽带和服务器成本就将近近十亿元,比全年的研发费用还要高。而更不为人知的是,避震的成立和服务器的崩溃还有着很大的关联。这到底是怎么回事,且听我细细道来。 两千年以后,随着互联网的发展,日漫在中国九零后、九五后的成长中迅速渗透,日本所盛行的宅文化、二次元等逐渐传入国内。二零零七年,一些漫画爱好者自发成 列了艾克棒网站,即 a 站,起初以上传漫画为主,后来开始效仿日本的弹幕视频网站妮蔻。妮蔻的模式是国内首家关于 acgn 的弹幕视频网站,三 g、 宅舞、鬼畜等跟随日本二次元潮流,内容不断丰富, a 站在不开放用户注册的情况下,聚集了大批量的二次元用户 来了。二零零九年七月, a 站突发机房故障,导致所有用户一个月内无法访问 a 站老会员徐毅便脱离 a 站,创办了密库 fas 网站,二零一零年正式更名为哔哩哔哩, 同样是聚集二次元社区的弹幕网站,但起初只是作为 a 站的一个备份,让用户在 a 站荡机的时候有地方可去 a 站,后来因创始人出走等诸多原因,逐渐网络 b 站一路跟随,反而后来者居上,发展成为包含视频、游戏、直播、社区 等服务的综合性内容平台。驿站的关键转折发生在二零一四年,当年五月,猎豹移动在美顺利 ip 哦,其联合创始人陈瑞功成身退,半年后正式加入驿站。但 董事长陈瑞经历过从创业到上市的全过程,也管理过庞大的团队,大局观好,创新意识也强,更重要的是,他是真心热爱动漫等二次元文化,是 b 站最早一批用户之一。因为喜欢 b 站,陈瑞早在二零一一年就找到了创始人徐毅, 投入五百万元成为天使投资人并担任业务顾问。而在担任 b 站董事长后,主要负责战略和融资,开启了 b 站的扩张之路。 也是从二零一四年开始, b 站开始改版,不单纯只做个二次元内容社区,而是增加了生活区、科技区和军事区等内容分区和独立的热门排行榜, 拓展用户群体。除了动漫之外,音乐、舞蹈、科技、军事、娱乐、游戏等,甚至时尚化妆的很多爱好者都开始聚集在了 b 站,这里逐渐成了独特爱好人的聚集的地方,与微博具有类似的社交属性。同时 地震视频内容也开始强调原创性,鼓励艾克主生产原创内容,并引入一键三连和粉丝打赏的充电机制,对艾克主开始真金白银的补贴。 现在的 b 站已经成为了最受年轻人欢迎的内容社区,而反观老大哥 a 站却一路不顺。二零一七年, a 站因未经批准擅自从事视听节目服务, 提供非法有害、违反社会公共道德的试听节目以及其他违法违规行为,被罚款十二万元。又被传出已经无法给员工发出工资,网站的日常维护和运营只能靠几位高管个人垫资。二零一八 年年初, a 站又一次无法登陆、停服和关闭的消息就开始不断被传出。背后的原因是由于阿里云提供的服务到期,一直融资不畅的 a 站却无法按其缴纳费用。 直到二零一八年年终, a 站被快手收购,总算结束了命途多蠢的道路。但是目前的 a 站,无论是用户规模、文化氛围还是资本实力,都不可和 b 站同日而语。而二零一九年, a 站曾一度暂停弹幕功能,也被认为是对二次元文化和力战根基的被禁。 经历了这么多风风雨雨,归来却不再是那个少年,多少令人惋惜。本期的内容就到这里啦,这里是易燃易爆料,喜欢 我们的视频请点赞、评论和转发呦,我们下期再见!

昨晚 b 站大楼停电, b 站崩完, a 站崩,豆瓣崩完,晋江崩,这几家怕不是在一栋大楼吧?随后亿万网友涌入 a 站找寻快乐,没想到 a 站承受不住这么大的流量,也崩了。之后网友又激情澎湃涌入晋江吐槽,但架不住人太多也崩了,程序员连夜加班,这就是互联网另一种方式的内选吧。


b 站在去年七月二十三号崩溃了两小时的原因终于找到了,而且让人没有想到的是,整个世界的罪魁祸首居然只是这么短短的几行代码。就在昨天,哔哩哔哩发布了整个事件的分析报告,没有想到啊,整个排查的过程这么曲折,这么惊心动魄, 而且看到最后整个触动对我还是挺大的,因为整个事故过程中的核心的技术排查人员其实就那么几个,你可想而知他们当时是顶了多大的压力啊。如果换做是我的话,我可能已经 话不多说,我们跟着 b 站的事故分析报告一起去看一下整个事情的前因后果。故障是发生在去年的七月十三号的晚上十点五十二分,这个时间点如果是一名合格的程序员,应该 应该还没下班吧,哈哈,开个玩笑,当时 sre 接受到了大量的告警,这里的 sre 指的就是网站可靠性工程师啊,客服和用户其实都已经发现了这个问题了, srv 第一时间怀疑了机房网络四层的 lb 还有七层的 slb, 这里我再简简单的解释一下四层的 lb 和七层的 slb 啊。四层的 lb 的话,其实就是基于三层的 ip 和四层的端 进行的一个负载均衡,七成的 slb 的话,其实就是基于 uil 等一些应用层信息的负载均衡, 简单的理解为就是两层复载均衡就可以了。然后常规操作就来了,就是拉拉起了语音会议,然后各个团队相关的人都进行了一些紧急的处理。可以看到很快啊,五十五分的时候就是远程在家办公的同学就已经开始登陆微拼了,这里发生的第一个意外啊,就是他们发现了自己没办法 去登录内网的健全系统。大家都知道在家办公的时候必须得打开 vpn, 然后才能登录内网才能访问的一些网络吗?在这里他们就根本没办法去打开内部的一些系统,肯定没办法去登录服务,去去查看一些日志啊什么的。当时情况还是挺紧急的, 在公司昂扣的 sre 的同学,他发现了就是在线业务主机的一个七成 slb, 他们的 cpu 都达到了百分之百, 没办法去处理一些用户的请求,其他的一些基础的服务层发现没有什么问题,所以这个时候其实基本上可以就是确定 啊,故障就是发生在七成的 slb 里面的,就排除了那些业务系统的问题嘛,对吧,只用了十分钟啊。就是远程在家办公的同学也开始联系上了一些负责 vpn 和内网健全的同学之后,然后开始通过绿色通道登录到了内网系统。这里的绿色通道我没有用过,但是我不知道是不是可以理解为就是可能绕开了整个微 偏,然后直接可以访问内网系统更安全的同学给自己留的后门,不知道是不是一回事啊。总之呢,就是所有的同学已经基本上在线了,然后登陆到了内网系统,也开始处理问题了,对应的一些团队的人也全部到位了,就比如刚刚我们提到的 七层的 slb 啊,四层的 lb 啊,还有 cd 音啊,已经全部到位了,在所有人的就位之后呢,就开始整个线上事故的止损了,因为现在还是大家所有人都访问不了的状态嘛,至少得让一部分人慢慢开始恢复访问吧,所以就开始了他们的止损之旅啊。 slb 的运维同学呢,就是分析发现就是在故障的时候有很多流量的激增, 怀疑是 slb 因为流量过载不可用,然后主机房的 slb 呢,也承载了所有的全部在线业务啊,他们先进行了一个 reload, 然后就开始拒绝用户流量,然后进行了一个冷启动,然后冷重启之后呢,发现 cpu 还是百分之百就是完全没有恢复啊。从 用户的反馈来看,他们发现了就是多活机房的服务也是不可用的。这里的话就涉及到两个机房啊,刚刚提到了主机房和一个多活机房,这个跟 b 站的就是架构设计有关系,大家可以看一下这张图,就是在 b 站设计里面,其实是有设计,就是他有自己的主机房,也有自己的多活机房。 然后再回到这里就他们发现了,其实两个机房他的服务都是不可用的。但是 slb 的运维呢,发现呢,就是 多活机房他的一个请求只是超时了,但是 cpu 没有达到百分百过载,所以他们决定就是重启多活机房的一个 slb, 进行一个止损。事实也证明他们这个决定是非常正确的。 在重启之后呢,发现了就是请求的数量慢慢降低了,然后业务数据也慢慢恢复了,因为多活机房里面没有承载一些主业务嘛,所以他这边恢复了一些百分之五十的 业务,在当天如果经历过这个时候的人,大家就已经发现了,就是跟当时的情况是一模一样的,可以看了,但是发现很多东西可能收藏啊,很多功能啊,都还是没有了,大家当时还在担心是不是这些数据也就丢掉了,当时我也是这么想的, 我这个收藏夹里面这么多学习资料对吧,到时候没有了怎么办,给我吓了一身冷汗啊,我比他们还紧张,然后恢复了百分之五十之后呢,他们就开始了,然后他们就开始尝试修复主机房的 slb, 他们通过了 pof 这个软件发现了就是 slb 的 cpu 热点集中在撸啊函数上面。 为了我再简单的介绍一下泼妇啊,泼妇的话是妮妮克斯上面的一个性能分析工具,一般都是用来分析程序中的热点函数的 cpu 占用率,然后从而去定位一些性能平静的一个工具。当时他们就发现了,就是都都是在路啊函数上面,所以他们就怀疑 上了近期上线的路啊代码。他们进行了三次回滚啊,包括回滚了像安和安全同学一起上线的路啊版本的 vov 啊,有防火墙,然后和 slb 两周前优化的一个 ngq 四的白认识白路啊 逻辑,还有就是 slb 一周前上线的挥度和对 http 二协议的支持,但事实发现都没有用,整个回滚过程已经过去了半个多小时了,然后他们 想到了另外一个方案,就是新开一个 slb 的集群,然后通过 cdn 把流量切到新的集群里面去, 看一下能不能解决掉这个问题,用了二十分钟把集群初始发完成了,然后开始配置呃 l 四四层的 lb 和公网的 ip, 在一点的时候呢,整个集群的测试完成, cdn 也开始切亮了, slb 的运维同学呢, 继续去排查那个 cpu 百分百的这个问题,贴量的业务呢,由 sre 的同学进行了一个帮助,这里看到就是开始并行去排查问题,就分工还是比较明确的,事实证明星级群是有效的,也是到一点五十分的时候,所有的 主战的一些网络呀,支付啊,各种东西也全部恢复掉了。刚刚我们有提到吗?一点的时候, slb 的同学去排查问题了,然后在排查的时候呢,其实就发现了我们今天的罪魁祸首,然后我们来看一下他们是怎么发现的。在凌晨一点十分的时候,他们又撸啊的程序分析工具, 跑出了一份详细的火焰图数据进行分析,火焰图是定位疑难杂症的神器啊,比如像 cpu 占用高啊,内存泄漏啊等这样的一些问题啊。大家发现了就是热点明显的集中在一个路啊的一个搬乱石的模块吊用里面,所以他们就从流量入口一直到底层分析,就发现了有多 多个函数都存在可能的热点,至少好起来了,对吧?然后在二十八分的时候呢,其实他们就开始第八个了,这个可能大家都比较熟悉了,就看日字,然后去不断的去分析执行函数里面的一些结果,日子进行分析嘛,最后他们就找到了问题,其实在第八个的时候发现了 gcd 这个函数, gcd 这个函数在执行之后返回了一个预期之外的值,也就是,嗯,这个大家可能也很熟悉啊,那谈 number 吗?对吧?就 也发现了,这就是这个诱因,某个容器的 ip 的位置等于零,这里的 gcd 我如果没有记错的话,他是应该是一个最小公约数的一个函数, 然后他们并不知道这个其实是根因,所以他们还怀疑上了,就是因为 gcd 这个函数触发了吉特编译器的某个 bug, 所以他们的解决方案其实就是全局的去关闭这个编译器, 关闭之后并且重启之后发现真的有用,当天晚上其实这个排查就结束了,但是大家都知道就是根因在这里嘛,所以第二天的时候,呃,他们其实用保留下来的那个进程文件,然后进行了复问题的复线,在线下的时候复线的这个 bug, 而且发现了就是关闭这个变异器,其实是没有效果的, 还是会发现 cpu 还是会打码吗?那其实在这个时候大家发现了就线上的代码其实还是有很大问题的,所以他们就决定禁止了发布这个模式,然后让 slb 忽略了注册中心返回的那个权重, 然后强制指定了权重,这样子的话就至少不会让啊,那个参数是零啊,当天反正在晚上的时候又进行灰度啊升级完成了,整个诱因,我给大家介绍一下,其实就是这一段啊,函数的根本原因,刚刚我们不提到那个实力的权 会变成零吗?但是在注册中心返回给 slb 的时候呢,他的是制服穿类型的零,大家也知道的就是数据类型不对,有多大的问题,但是呢,撸啊他有个特点啊,下面其实也有介绍, 它是一个动态的类型语言,就是它是不需要指定类型的传进来的参数,如果是为等于零的时候,可能就是 gcd 里面入餐的这个币就会变成这个制服串的零, 变成这个制服串的零有什么问题呢?我们来看一下这个函数的判断好不好,比如如果呃就船餐就是 a 和 b, 然后如果 b 等于零,这个零是数字的零啊,然后他就会返回 aok 的,对吧?因为他是制服串类型吗?他肯定会走下面这段函数吗? 所以他会返回这个 gcd, 然后 b 和 a 的 a 和 b 的区域,然后下面其实对这个进行的一个解释,如啊,其实会对 对制服串进行算数操作的时候,会把它转换成制服,也就是刚刚的制服串的零类型,虽然说在这判断的时候会进入到下面,但是在进行取余的时候还是会变成零的, 但是呢,如果在执行运算的时候,就是如果任何数和他进行一个区域的话,结果就会变成 nan, 就是脑残 number, 所以这里 永远都是个死循环,因为他在这个判断的时候永远会进入下面这里,因为他不是数字类型的零啊,他在这里的时候又变成了 nan, 团餐进来之后,那恩进可耻的沃克就会进入了死循环, cpu 就会百分百, 是不是很精彩,我就我万万没想到啊,就因为这样的一个参数,然后这样的遗憾代码导致了这么大的问题的一个发生,前面的很多东西他们也其实做了一个解释,然后也解决了我心中其实在看的过程中的很多疑惑,就大家不是 最开始发现就是为什么没有登录后台啊,什么,其实他们的登录系统是这样的,他先进行用户登录访问,登录页面的时候先进行办公网的一个 slb 的访问,然后他们会进行一次从定向,从定向会从定向到外网的 slb, 在这一层不是刚刚挂掉了吗?所以在这里打个叉叉就不行了啊。为什么就是多活的 slb 在故障的开始阶段也不可用? 因为我们刚刚也知道就是多活的 slb 的话,在故障在故障开始的时候,其实他 cpu 是没有打满的,但是为什么不可用呢?罪魁祸首就是流量了,因为多活在故障的时候, cdn 的流量就是回流从事,还有就是用户的不断从事,这个大家可很好理解啊, 页面就是疯狂在那刷新对吧?流量就增长了四倍,然后连接数也涨了一百倍到一百万的级别了啊,就导致了 slv 的过载,后面是因为流量逐渐的下降, 大家可以看到这个流量分子啊,然后才逐渐恢复的,是不是很有意思,而且你很有可能就是没有马上恢复的那个罪魁祸首让你们一直刷新, 辛苦了我们的开发同学啊!他们还解释了为什么在最开始回滚无效了之后才选择去就是建新的一个 slb 集群,而不是两者并行去做呢?因为这样可以省很多时间对吧?其实核心的原因就是人手不够,整个 slb 团队只有一个开发和一个运位, 大家知道这是世界事故,核心其实在解决问题的其实就是这两位同学,虽然会有很多同学协助他们去做,但是大家都知道的就是如果你不是负责这个业务的人,你很多东西你其实是帮不上太多忙的, 大家可能最多看一下自己的业务的排查,呃,看看日资啊,看看流量啊,这方面的,很多核心的东西还是得他们自己去解决,所以 你可以理解为就是所有的压力其实在他们两个身上的就想都不敢想好不好,切,心急群的时候就为什么花了这么久,他们也有解释刚刚有提到他们的整个的架构是这样子的, 然后就是啊,其实是有 cdn, 然后有四层的 lb, 七层的 lb 和一些其他的服务, 这个过程中间就涉及到了 slb 的团队,四成的和 cdn 的团队,所以大家懂了吧?啊哈,就涉及到团队太多了,然后不断的去重启配置啊,都是需要很费时间的。然后大家可能也有问题,就是为什么就是奇特编译,其实是 不是那个跟音,为什么重启那些服务之后还是会恢复呢?最主要的原因就是某个容器他的 ip 为等于零了,对吧?重新发布其实就解决掉了这个问题,因为这个又已经消失了吗?对应的优化改进呢?其实 大家可以去看一下,这个其实都是业内有一整套的完整的解决方案了,只是他们对于 slv 的治理进行了一个架构的改进和一些运用能力的升级啊等等,这个的话我觉得是对其他的一些公司是有很强大的借鉴意义的,大家感兴趣的也可以去看一下。最后的话我也做一个总结吧,就是 当天上了热搜吗?我当时其实也在好奇,到底是出了什么样的故障才会发生这样的事故,因为自己本身也是一名开发者吗?所以还是比较好奇的。然后我当时还写了一篇文章去分析,也有很多人去认同我啊,当时我其实有想过,就是啊,比如像 服务层全部挂掉,然后比如像呃负载均衡层全部挂掉,然后也有想过就是 cdn 全部挂掉,其实我都有去想过这些问题,甚至连服务器、云服务厂商挂掉,我其实都有想 讲过,比如像这边有提到的 cd 音啊, slb 啊,就是加后端集群啊,我其实很多东西我都想到过了,但是我没有想到,就是在 slb 里面是因为银行代码引挂的,所以事故就是这样。嗯,出现一个很新奇的角度突然出来,而且一出来就给你一个猝不及防 啊。大家也看到了,就是在真正线上问题的时候,就会有各种各样的问题出现,甚至比如你登不上呃内网,对吧?然后你在排查的时候发现,你以为你解决了本来的根本问题,但实际上还没有,所以这也是 大家必须得刨根问底,然后才能去发现问题的根因的点,这也是可能做程序员的魅力吧。就是大家有没有发现,看完之后觉得真的哇,真的是在我看来啊,真的就是看着很爽, 然后也是为那天晚上奋斗的所有的开发人员鼓一个掌,因为真的是不容易啊,这种压力就是顶着全网热搜的压力,然后就是逼上官方的一个态度,我原以为我是永远都不知道这个答案了,因为我在那猜了很久了,但是 他给了我一个意想不到的答案,而且在一年之后以这样的方式就是自己复盘了自己的 过去,面对自己这么大的故障,还把这么多细节的东西分享出来,我觉得这可能只有技术人才独有的一些特点吧。大家可以发现最开始其实的作者 就是来还债的,逼上还了一年前事故分析的债了了,我们很多人心里的一个疑惑,对吧,也给很多对应的公司啊,给了一个很好的案例,当时他们在 在文章的最后其实有提到,当时呃有一个 b 站高可能的加一个在全网的一个课的视频,其实很多人在下面抨击和嘲讽啊什么的,当时说实话我也觉得挺讽刺的, 你自己说自己是高可用的架构实行,然后现在崩成这样了,但是后端服务的高可用架构其实在这一次是生效了的,挂在了 slb 层而已,所以这个课程本身其实还是很有意义的。然后大家是不是呃以前嘲讽过老师的人也可以去给他说一声对不起啊,对吧? 好了,以上就是本期的全部内容了,我自己反正是看的很爽,不知道看大家看完是什么感受,然后如果大家觉得我分析的还不错的话,记得给一个三联啊。好,我是敖敏。以上就是本期的全部内容了,感谢各位的三联,拜拜!

这个人群便是对 b 站抱有不满的人群,还因为 b 站的最开始是十分纯粹的二次元聚集地,极高的入门考试,淘汰了很大一部分非二次元用户。哎,所以那时的 b 站呢,没有恶臭的评论,也没有阴阳怪气的讽刺,有的只是肉眼可见的热爱。可是人总是想往高处走的吗?随着用户数量的增多和良好的口碑,资本不 可避免的进入了 b 站,也是为了扩大用户群体,考试难度一降再加,导致用户群体不再纯粹。原本是 b 站为净土的粉丝感觉受到了欺骗, ok 是对 b 站抱有敌意,而其中的佼佼者便是一位名叫蒙古上单的勇士,只见他带头冲锋,在成熟中的评论下开团,一时激起千层浪,被点燃热情的粉丝们助其冲上热评。而尽管蒙古上 单很快被封号,但他依旧成为了粉丝们的精神领袖。白云社在陈述出去世的谣言发出的时候,粉丝们直接一脚踢开米哈油,将这个斩首头弓安在了 蒙古上单的头上。哎,也是,蒙古上单直接冲上热搜,这把蒙古上单宴席 b 站呢?蒙古上单单杀陈瑞啊,甚至还有蒙古上单只使村小川动手,可抽象版蒙古宣言就你妈离谱!但是玩归玩,闹归闹,大伙都还知道这只是在玩梗而已。那么冰山崩溃的真实原因到底是什么呢?

萨卡达布里诺宏基特一可可 在 女友第九十九次冷暴力,放开我, 放开我,你才放开我, 哈哈哈哈。哇,有我的没死吗?哈哈哈哈。


bilibili 居然荡机了,什么屌东西啊,这什么鸟东西呢? 哈哈哈,能不能稳定一点? bilibili 怎么这么不稳定呢? 你看网站是能正常打开的啊,就是 bilibili 这个什么东西? bilibili 系统网站实在是太不健壮了 啊,今天怎么回事啊?看着看着就五零二了啊, 这个是这个是什么?是哪边的服务器了啊?还是用的什么东西啊?看是哪家企业软件公司提供的什么东西啊啊 啊,淘宝发起的 web 服啊啊,是淘宝的啊啊,这是什么垃圾东西吗?啊啊,是淘宝的应用, 淘宝的应用这个上面 bilibili 那是淘宝的坑了, 哈哈哈哈,哔哩哔哩太牛逼了。卧槽,四零四了现在是,呃,二零二一 一年七月十三号啊,二十三点零一分啊啊, bilibili 网站档机了,挂掉了,哈哈哈哈,看能多能多久恢复啊。还没恢复啊, 这什么垃圾啊。 bilibili 当机了啊啊,这什么垃圾? 哔哩哔哩牛逼。