写点什么

B 站崩了:事情不大,影响不小

  • 2021-07-14
  • 本文字数:1692 字

    阅读完需:约 6 分钟

B站崩了:事情不大,影响不小

7 月 13 日晚间,B 站因无法访问登上热搜榜。


昨天深夜,B 站出现访问故障,无法打开,页面提示加载失败。除了网站和移动端显示加载错误之外,B 站出品的轻视频、剪辑软件必剪等均无法打开,显示页面加载出错。



一个网站的短暂崩溃,居然引起这么大的声响?


公司 2020 年第三季度财报显示,去年 8 月,B 站的月活用户突破 2 亿。最新数据则显示,B 站月活用户为 2.23 亿,其中 35 岁及以下的月活用户比重超过 86%。


B 站故障之后,消息迅速扩散,“B 站崩了”冲上了各种热搜榜。微博热搜第一,知乎的提问下截至目前为止,总共有 12727 个回复。连朋友圈里,都被 B 站技术总监分享过的“高可用架构实践”演讲刷屏。



故障持续了一个多小时,同时崩溃的还有老牌二次元网站 AcFun(A 站)以及豆瓣、晋江,但豆瓣、A 站等很快就得以恢复了。


一个网站的“崩溃”,让无数习惯了互联网生活的人睡不着觉,也有不少网友一起帮忙分析到底是互联网的哪个环节出了问题,甚至还因此惊动了消防局。


对于网传“B 站崩了是因为有火情发生”,上海消防辟谣道:“经了解,位于上海市政立路 485 号国正中心内的哔哩哔哩弹幕网 B 站(总部)未出现火情,未接到相关报警。具体情况以站方公布为准。”


今年 3 月份,曾发生过数据中心失火造成 360 万网站下线的事故,因此有人猜测是云海数据服务中心发生了火情,消防也对此表示了极大关注。



什么原因会导致网站宕机?


至 14 日凌晨 2 点 15 分,B 站所有功能均恢复正常。B 站官方 7 月 14 日凌晨发布消息称,昨(7 月 13 日)晚,B 站的部分服务器机房发生故障,造成无法访问。技术团队随即进行了问题排查和修复,现在服务已经陆续恢复正常。


但是对于具体宕机原因,B 站并未作说明。InfoQ 联系了 B 站相关技术人员询问具体情况,截止发稿前仍然没有得到答复。


对于网站宕机常见原因,开源基础软件公司 Zilliz 的质量保障团队负责人乔燕良认为,主要可分为软件服务引起的故障和硬件服务引起的故障。


软件服务故障一般可理解为代码逻辑缺陷,常见的是新增或更新某个功能而引入缺陷导致整个服务中断;硬件服务故障一般是由于某些服务设备的损坏造成服务中断,比如光纤被挖断了。


互联网服务中链路的每个环节都有可能导致问题发生,据另一位数据库专家分析,因为这次 B 站主站都挂了,应该和数据库没有关系;宕机发生的时候,通过技术分析,可以看出 CDN 查不到相关机房的数据。由此推测,B 站这次应该属于机房级别的故障,需要增强多机房容灾能力。




这次故障,对 B 站的影响不小,综合损失应该也不小,但如果去提升业务的连续性,还需要很大成本。常见的可用性通常以百分比表示,这也意味着高可用性不是绝对的。换句话说,100% 的可用性是不可能达到的,可用性从 99.99% 提升到 99.999%,每提升一个 9,需要十倍百倍的成本。可用性的效果和开销对应的比例并不是线性增长的,每提高一点可用性,所花费的成本都会远超之前。


虽然企业需要在这个非线性增加的成本和可用性之间进行权衡,但对于一些公司来讲,肯定还会去尝试获得更多的 “9”,减少应用的宕机时间,降低宕机成本。


如何用合适手段降低宕机风险、提高服务的高可用呢?乔燕良认为:“首先从架构上,建议采用云原生架构,实现自动容错机制和故障隔离,能够在服务出现故障时快速迁移或回滚。对于网站来说,实现数据服务高可用的挑战可能会比较突出,因为目前架构下多数服务都是无状态的、可以完成平滑迁移,而数据服务往往是有状态的,云原生服务(如目前的一些云原生数据库)通常具有很好的自动容错、弹性伸缩、安全隔离等功能。其次为防止硬件故障类风险,需要有完善的灾备方案。针对传统服务架构已经有比较成熟的同城双活和异地灾备方案,而基于云原生的高可用方案,比如 kubeadm 也已经比较成熟,只是国内企业在这块投入比较‘节约’。”


就像人工智能无法替代人类一样,目前的软件仍然是不可完全信任的。我们的世界瞬息万变,我们的软件(包括人工智能)只是对世界当前场景的理解和判断,随着时间的推进,某一时刻这些理解判断的逻辑会出现不适用甚至错误。这一时刻何时到来、环境又会变得怎样,将永远是最不可预测的因素。


你认为 B 站崩溃是什么原因导致的?欢迎留言讨论。

2021-07-14 16:2115556

评论 2 条评论

发布
用户头像
"主要可分为软件服务引起的故障和硬件服务引起的故障" 听君一席话,如听一席话
2021-08-30 09:47
回复
用户头像
b站一直就不怎么样,卡顿很常见。
2021-07-19 09:22
回复
没有更多了
发现更多内容

Himly TCC Dubbo 程序示例

Java 分布式事务 dubbo TCC Himly

智能合约Dapp系统开发,区块链智能合约技术

薇電13242772558

区块链 智能合约

Java渣渣外包开发3年,4面终揽下美团面试官,含泪拿到22koffer

比伯

Java 编程 程序员 架构 面试

字节首发Redis笔记,基础+原理+应用+源码+拓展五大核心模块

Java架构追梦

Java redis 编程 架构 面试

第四周 系统架构 学习总结

胡云飞

极客大学架构师训练营

冰河,能不能讲讲如何实现MySQL数据存储的无限扩容?

冰河

MySQL 分布式存储 海量数据 mycat 可扩展

架构师训练营 -week13-作业

大刘

极客大学架构师训练营

懒人神器——新手必备的图片后期处理软件

懒得勤快

图片后期 修图 滤镜 ps

Swift函数调用逆向分析

ios swift

如何透彻理解 Redis 核心原理?怎样才能形成 Redis 系统观?

Java架构师迁哥

六度空间系统APP开发|六度空间软件开发(现成)

系统开发

Week 13

黄立

流动性挖矿DAPP软件系统开发

系统开发

2020年文章合集

Rayjun

03-week4-homework

J

极客大学架构师训练营

光知道SpringBoot,不用thymeleaf就太不对了

小Q

Java 学习 编程 面试 Spring Boot

世界之书:《人类简史》与想象中的共同体

lidaobing

28天写作

盘点2020 | 寒门难出贵子,我当程序员让爸妈在老家长脸了

爱笑的架构师

Java 程序员 程序人生 编程之路 盘点2020

面试必问系列,源码解析多线程绝对不容忽视得问题:线程活性故障

小Q

Java 学习 架构 面试 多线程

生产环境全链路压测建设历程13:淘宝网稳定性近十年发展历程 2009年-2019年

数列科技杨德华

全链路压测 七日更

一个典型的大型互联网应用系统使用了哪些技术方案和手段,主要解决什么问题?

我们新四军不拿群众一针一线

测开之数据类型· 第4篇《迭代器、生成器》

清菡软件测试

测试开发

架构师训练营 -week13-总结

大刘

极客大学架构师训练营

海量小文件存储系统HOS探索与实践

Galaxy数据平台

大数据 OSS 对象存储 HBase GEEDGE NETWORKS

区块链落地应用开发- 珠宝溯源,不当“冤大头”

13828808769

区块链技术 区块链落地开发 珠宝溯源

面试阿里被质问:ConcurrentHashMap线程安全吗

Java架构师迁哥

Netty RPC Demo 实现

Java RPC Demo

第四周 系统架构 作业 「架构师训练营 3 期」

胡云飞

极客大学架构师训练营

互联网架构总结

J

极客大学架构师训练营

阿里9年老开发终于总结出微服务架构设计模式PDF了

小Q

Java 学习 编程 架构 面试

DeFi流动性挖矿系统APP软件开发

系统开发

B站崩了:事情不大,影响不小_架构_Tina_InfoQ精选文章