微博服务器为什么会宕机?这几年为什么极少再宕机了?

news2024/11/17 14:54:23

大家有没有发现一个事情,相比六七年前微博动辄因为各路明星的新闻忽告宕机,比如最出名的微博“三大战役”:李晨发范冰冰分手、王宝强离婚,鹿晗公布恋情,近几年微博宕机的次数已经越来越少了。

自从各路明星大料不断让新浪服务器时常处在崩溃的边缘后,不少吃瓜群众将明星的咖位与微博服务器进行挂靠:如果某明星传出出轨/结婚/离婚等大事后,微博不会崩,那证明这个明星影响力不够。

为什么新浪的服务器老是崩掉呢?国外也有这种情况吗?

新浪服务器遇到明星的大爆料会崩溃就相当于国庆节上高速,访问量激增后大家一起挤在路上,服务器处理不过来,就会表现为部分业务请求无效,或是整个瘫痪,也就是所谓的宕机现象。

其实服务器崩溃的事件并不罕见,国外的网站也会出现这种问题,例如前几年YouTube出现全球范围内宕机事故,YouTube、YouTubeTV和YouTube music都被波及,大约半小时才恢复。除了爆发的访问量,引起网络瘫痪的原因也可能是物理性的,比如微软数据中心被雷击中,其云服务大面积出现网络连接问题;韩国KT电信突遭大火,整个首尔几乎全面网络瘫痪等。

究竟什么是宕机?引发宕机的原因又是什么?

实际上,宕机是IT行业术语,宕为英文down的音译。所谓宕机,是指网络空间的信息系统无法提供正常服务,出现卡顿甚至“停摆”现象,用户的直接体验就是系统长时间无响应,比如无法正常访问、搜索无响应、无法发帖等。

 造成系统宕机的因素有很多,比如机房供电故障、服务器硬件崩溃、系统处理能力不足、遭受网络攻击等。由于突发热点事件引发的微博服务器宕机事件,通常是由于瞬间访问量暴增,导致后台服务器不堪重负,只好“一宕了之”。资料显示,微博系统服务器的访问量上限被设计为预估平时流量的峰值,相关服务资源均依此配置。一旦突发事件导致访问量超出此峰值,系统将无法承受,宕机也就在所难免。

微博宕机是不是因为存在什么技术问题?

其实单就技术层面来说,预防微博服务器宕机不存在太大问题,只要扩充容量即可。而微博服务器宕机事件频发,原因主要有两方面:

一是微博服务器部署规模及其处理能力受限。很多公共服务平台的平时流量基本稳定,基于成本考虑,在保持适度冗余处理能力的前提下,微博运营商不会主动去租用或配置大量超出日常数据处理需求的计算和存储资源。服务器扩容多了,如果没有流量支撑,就会造成资源闲置及成本增加。这为微博省去了大量的成本,毕竟平时如果征用这么多服务器,也都基本处于闲置状态,实在过于浪费。根据阿里云官微之前的价格公布,一台机器租用1小时只要1.86元(事实上这只是华北3区一台低配版机器的价格)。即便仅按这个最低配的价格来算,每天使用1台机器将产生45元钱左右的费用,1000台需要45000元,一个月需要135万元,一年需要1620万元成本。

另一方面,微博流量具有瞬间峰值高、持续时间短的特征,在热点事件出现时表现得更明显。微博热点流量较难预测,使得微博运营商在扩容问题上陷入两难境地:扩容多了易亏,扩容不足易挂。

 目前预防服务器宕机的解决办法,新浪给出的做法是扩容。但是扩容有个最大难题是:新闻事件是随机的,明星们可不会专门挑时间让你准备好服务器再出事。所以对新闻影响力的预估就很考验平台的判断力,比如错误地预估了某个明星的事情能够带来的震荡程度就会带来另外一个问题——临时花了很高成本购买的的服务器成本搭进去了,又没带来那么大的流量,不仅拿不到到预计的收益还赔了服务器的高昂成本。

新浪这么大一个企业备几台闲置的服务器难道备不起吗?

新浪作为一个大公司,买得起是肯定买得起的,不过现在服务器基本上是按需收费、按时收费的,一天花的钱还好,一年的钱可就是个大数目了。新浪作为一个企业,首要目的肯定还是盈利。如果是直接购置硬件的话,高并发时可能需要上千台服务器才能处理,而平时的访问量已有的服务器就可以解决,导致新置的服务器绝大多数时间只能闲置,这是巨大的资源浪费。所以一般来说新浪也是有需要才会临时加购服务器。对于新浪来说最为可靠的解决办法就是:运维和程序员随时准备加班;或者和明星团队通好气,让他们在爆料之前先跟新浪联系。

如果加购选项不成立,那么能做到预测峰值流量吗?

热点流量虽较难以预测,但不等于不可预测。只要能预估出流量峰值范围,就可通过定时扩容和提供弹性计算存储资源来从容应对。很多平台在这方面都有过应对流量突增的成功案例,比如电商平台应对“双十一”时的峰值流量。明星离婚等网络突发事件,虽不受微博运营商控制,但微博运营商应该可通过舆情监控等手段感知即将到来的流量大潮,通过启动应急预案来应对。构建弹性伸缩业务系统,辅以人工智能预测和业务持续性监控,来保障峰值服务正常运行。比如,通过人工智能技术来预测网络突发流量,利用云计算弹性计算资源平台来实现快速扩容甚至实时扩容,以应对高峰流量。云提供商目前可在宕机后数秒内探测到服务不可连接,然后在90秒内实现扩容,恢复运行中断业务。这种按需部署的服务器配置方式,既可显著降低网络平台服务器宕机的风险,又能很好地利用存储计算资源,实现双赢。

同时微博还可采用“降级”运行策略,即将服务器的业务拆分为若干相对独立的业务,各业务之间共享数据库。一旦服务器出现过载,可启动降级策略来“丢卒保车”,至少保证核心业务能正常运行。比如,若微博热搜榜崩溃,可维持评论、转发等核心功能的正常运行。

另一种有效的应对方式是利用边缘计算技术,通过在网络边缘实现数据分布式本地处理,可显著降低访问数据的汇聚和传输总量,这不仅能缩短用户响应时间、提升用户体验,还能大幅降低中心节点的数据传输和处理压力,也是一条应对宕机的新路径。

“边缘计算”比较完美的解决了宕机难题

边缘计算是为应用开发者和服务提供商在网络的边缘侧提供云服务和IT环境服务;目标是在靠近数据输入或用户的地方提供计算、存储和网络带宽。边缘计算是一种分布式计算,将数据资料的处理、应用程序的运行和功能服务的实现,由网络中心下放到网络边缘的节点上。这样就可以把云打散,就近接入不同节点,提供最近端服务。把边缘计算和云计算紧密结合,充分发挥边缘的低延迟,安全等特性同时,结合云的大数据分析能力。

全国网民在同时访问微博时,可以就近访问不同的节点。各个节点之间有一定的处理能力,处理完再上报给集中节点,这就大大减少了数据的汇聚和传输量,同时就近节点的访问延迟也会缩短。此外,边缘计算支持数据本地处理,大流量业务本地卸载可以减轻回传压力,有效降低成本。

CDN巨头对于边缘计算的应用如何?

CDN(即内容分发网络)的核心价值是将数字内容智能分发到离用户更近的节点,进而提升整体分发效率,降低网络延时、节省带宽资源,其与生俱来的边缘节点属性,低延时和低带宽,令其在边缘计算市场具备先发优势,CDN本身就是边缘计算的雏形。

Akamai作为全球CDN领头羊早在2003年就与IBM合作边缘计算,如今Akamai与IBM在其WebSphere上提供基于边缘Edge的服务。网宿科技也已将边缘计算当成核心战略,2016年开始建设边缘计算网络,2017年逐步推出边缘计算微服务,并将逐步开放边缘IaaS和PaaS服务。CloudFlare公司在2017年就推出了CloudFlare Workers,以微服务的形式开放边缘计算服务,支持用户在边缘端编程,这标志着它已经初步搭建好了边缘计算的平台。阿里云/腾讯云也均在云计算和边缘计算上下了很大功夫,并且有非常成功的经验,比如上文所提的微博就是主要使用的阿里云服务器,正是因为阿里云的云计算和边缘计算技术不断进步和迭代,才保障了微博近年来宕机事件越来越少的成果。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/543905.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

TCAN114x-Q1部分组网增强型CAN FD收发器(SBC_CAN的收发器)

目录 TCAN114x-Q1部分组网增强型CAN FD收发器1、功能2、应用程序3、描述4、设备比较表5、引脚配置与功能8、规格8.1绝对最大评级 9、参数测量信息10、详细描述10.1概述10.2功能框图 10.3特性描述10.3.1 VSUP引脚10.3.2 VIO引脚10.3.3 VCC引脚10.3.4接地10.3.5 INH/LIMP引脚10.3…

2023年海外网红营销:品牌影响力大揭秘

随着社交媒体的快速发展,海外网红营销已经成为品牌推广和营销策略中不可或缺的一环。海外网红凭借其个人魅力和广泛的受众群体,为品牌带来了巨大的影响力和商机。本文Nox聚星将和大家详细探讨2023年海外网红营销对品牌的影响力究竟有多大。 1、巨大的市场…

CIE颜色空间LCh、Lab、XYZ-sRGB介绍与转换关系(包含源码)

项目场景: 提示:在颜色科学中,LCh和Lab是比较常用的 LCh是由MATLAB计算出的数据,但是我所需要在Qt的q3dsurface绘制出这个切面,看了Qt官方Examples,墨西哥草帽算法的3D模型就是由XYZ组成的。所以我需要LC…

如何让“ChatGPT自己写出好的Prompt的“脚本在这里

写个好的Prompt太费力了 在网上,你可能会看到很多人告诉你如何写Prompt,需要遵循各种规则,扮演不同的角色,任务明确、要求详细,还需要不断迭代优化。写一个出色的Prompt需要投入大量的时间和精力。甚至有一些公开的Pr…

风靡 B 站的《看漫画学 Python》到底是什么来头?

学习 Python 的小伙伴大部分应该都知道《看漫画学 Python:有趣、有料、好玩、好用(全彩版)》这本书! 毕竟,如果在 B 站搜索“漫画 Python”等相关关键词,会看到整个页面都是和这本书相关的视频…… 郑重声…

2023世界旅游经济趋势报告发布,中国旅游日期间博冠8K发起慢直播一日游活动

一、2023世界旅游经济趋势报告重点解读 (1)全球旅游恢复至疫情前六至八成 近日,世界旅游城市联合会和中国社会科学院旅游研究中心联合发布了《世界旅游经济趋势报告(2023》,指出2022年全球旅游总人次达到95.7亿人次&…

谷歌扩展开发v3版本,自动请求接口

背景:pc端项目要是1个小时不动不请求,token会过期,写个插件每隔一段时间自动取请求一个接口,让token不过期过程:在刚开始写的时候 网上大部分是 谷歌扩展开发v2版本的做法,先是把官方文档看了一下&#xff…

计算机论文写作规范

什么是顶会 顶级会议一般是,在业界(本领域本方向)受到广泛的承认,影响力较大的会议。一方面一般顶级专家、学者都倾向于将paper投到这些 会议;另一方面这些会议的论文代表了该领域的目前很优秀、有重大意义的进展。"顶级会议"的投稿竞争压力一般都很大,属于在经典 p…

【k8s】Jenkins实现Java应用CI、CD实践 【二】【待写】

一、运行Jenkins流水线流程思路: 场景1:常规java应用,使用jenkins pipeline 交付到Kubernetes集群中1、准备好java代码、Dockerfile、 deploy. yaml资源清单文件CI阶段: 1、获取代码 2、漏洞扫描 3、检测漏洞扫描结果,如果正常则…

MySQL8.0卸载、安装和使用(一)

1、MySQL数据库的卸载 有小伙伴在学MySQL的时候总是出现各种问题,MySQL的安装都会出现许多问题,今天以MySQL8.0作为示范,需要注意的问题和正确的使用方式。因为MySQL是系统软件,相对复杂,因此先讲卸载。 步骤一&#x…

病毒丨文件夹病毒

作者丨黑蛋 一、基本信息 文件名称 880753802c3e6f4b5269062d4e76200c66e3a71e2118702e24d2b32c19dddfd2 文件类型(Magic) PE32 executable (GUI) Intel 80386, for MS Windows 文件大小 479.50KB SHA256 880753802c3e6f4b5269062d4e76200c66e3a71e2118702e24d2b32c19dddfd2 …

青龙面板使用教程,以及安装

1. 青龙面板使用教程,以及安装 首先青龙面板是在docker里面的,我们要安装一个docker 我这里只有debian 11 安装的教程 如何在debian11上安装docker - 知乎 这个文章不错了,按命令执行就好了,其他操作系统的。去网上搜索安…

Unity - BRP - PP后效导致 Camera.targetTexture 被换掉,graphicsFormat 不对问题

文章目录 环境目的原因问题解决方法 环境 Unity : 国际版2020.3.37f1 Pipeline : BRP Packages: Post Processing 3.0.3 目的 BRP 虽然是 官方放弃更新的 渲染管线,但是有些项目仍然会使用到,有一些踩过的坑,该记录的还是记录一下&#xff…

Python爬虫入门 - 通过茅台脚本讲些爬虫知识,应用和价值

前言 前段时间抢茅台脚本非常火,它是 Python 脚本,加上刚好最近在学习 Python,我们准备通过这个脚本,来加深学习 Python。 抢茅台的脚本其实属于爬虫脚本的一类,它实现了模拟登陆,模拟访问并抓取数据。于…

chatgpt api调用方法指南

文章目录 python调用chatgpt api的方法获取api可以调用的模型各种任务代码示例文本分类任务文本生成(补全)任务多轮对话任务 机器翻译任务文本摘要任务信息抽取任务 本文主要介绍使用python调用chatgpt api的方法,并提供一些任务的代码样例&a…

2023年认证杯C题超详细思路配有实现代码

2023年认证杯初步解题思路 后续会更新思路对应的实现代码 问题一思路 数据预处理:首先,根据描述,你已经有了心电波形的功率谱密度数据。你可以将频率范围从0 Hz到180 Hz分成361个频率间隔为0.5 Hz的数据点。确保数据格式正确,并…

chatgpt赋能Python-python2虚拟环境

Python2虚拟环境——加强你的编程能力 Python是一种广泛应用于Web开发,数据科学和机器学习等领域的编程语言。但是,由于不同的应用程序需要使用不同的Python库和版本,因此在不同的项目之间切换时可能会出现问题。 Python虚拟环境可以帮助您解…

八股总结(五)java基础、集合、并发、JVM

文章目录 接口、类与继承java中创建对象有哪几种方式? 和equal区别是什么?hashCode()为什么重写equals方法必须重写hashcode方法?String为什么设计成不可变的?String,StringBuffer,StringBuilder的区别是什么&#xf…

2023年改版第七版PMBOK后的PMP到底考什么?出题依据是什么?

2023年改版第七版PMBOK后的PMP到底考什么?出题依据是什么? 自从PMBOK(Project Management Body of Knowledge)第一版于1987年发布以来,它已成为项目管理领域的标准参考。PMBOK指南是Project Management Institute&…

Python画图设置坐标轴数字的千位分隔符

目录 导入必要的库创建图形并设置坐标轴设置坐标轴的千位分隔符完整代码效果图 当使用Python进行绘图时,可以使用 Matplotlib库来设置坐标轴上的数字的千位分隔符。下面是一个完整的教程,其中包含代码示例。 导入必要的库 在开始编写代码之前&#xff…