微博热点事件背后数据库运维的“功守道”

本文介绍了微博在应对热点事件时的数据库运维挑战,包括不可预见的流量激增、峰值流量大、持续时间短等问题。微博采用了MHA实现MySQL高可用,多级缓存架构来缓解压力,并通过配置服务中心实现动态运维变更。应对策略包括扩容、降级、切流量、限流和过载保护,以及未来规划的智能扩缩容和故障自愈系统。
摘要由CSDN通过智能技术生成

【导语】 微博拥有超过3.76亿月活用户,是当前社会热点事件传播的主要平台。而热点事件往往具有不可预测性和突发性,较短时间内可能带来流量的翻倍增长,甚至更大。如何快速应对突发流量的冲击,确保线上服务的稳定性,对于提供全微博数据托管的服务部门数据库团队来说既是机遇又是挑战。本文尝试从一线DBA的视角管窥微博热点事件背后的数据库运维应对之道。

背景&挑战

背景

正是图1这条微博动态,让一个平常的国庆假期变得不同寻常,微博刚一发出就引爆网络,它将明星CP动态推向了舆论的高潮,并霸占微博热搜榜好几天,也正是因为这个突发的流量,致使流量过大一度引发微博服务器瘫痪,而成为吃瓜群众热议的话题。微博拥有超过3.76亿月活用户,是当前社会热点事件传播的最主要平台,其中包括但不限制于大型活动(如里约奥运会、十九大等)、春晚、明星动态(如王宝强离婚事件、女排夺冠、乔任梁去世、白百合出轨、TFBOYS生日、鹿晗关晓彤CP等)。而热点事件往往具有不可预见性和突发性,并且伴随着极短时间内流量的数倍增长,甚至更多,有时持续时间较长。如何快速应对突发流量的冲击,确保线上服务的稳定性,是一个挑战巨大且颇有意义的事情。

图1  鹿晗发博截图

图1 鹿晗发博截图

热点事件的特点

从上述系列流量图中,我们可以看出这两起事件对微博的核心服务如Feed、评论、赞、话题等带来的压力都是成倍的,创造了历史的新高点。仔细分析不难发现,这类事件基本可以分为:发生期、发酵期、暴涨期和缓解期,只是由于天时地利人和等各种因素的综合影响,各个时期的持续时间、流量变化不尽相同,对服务的压力也有所差异,在暴涨期所表现出的不亚于天猫双11,以及12306抢票的盛况。总体上反映出这类热点事件的特点为:

  • 不可预见性和突发性
  • 峰值流量大
  • 持续时间短
  • 参与人数多
  • 涉及资源广

图2  鹿晗关晓彤CP Feed业务量

图2 鹿晗关晓彤CP Feed业务量

图3  鹿晗关晓彤CP评论业务量

图3 鹿晗关晓彤CP评论业务量

图4  鹿晗关晓彤CP 话题业务量

图4 鹿晗关晓彤CP 话题业务

面临的挑战

微博研发中心数据库部门主要负责全微博平台后端资源的托管和运维,主要涉及的后端资源服务包括MySQL、Memcached、Redis、HBase、Memcacheq、Kafka、Pika、PostgreSQL等。为了应对峰值流量并保证用户的良好体验,资源层会面临哪些挑战?又将如何解决呢?

  • 面对不可预期的峰值流量,有时恶意的刷站行为,如何应对数倍,甚至数十倍于日常访问量的压力?
  • 如何应对瞬时可达几万/秒的发表量?
  • 如何做到异地容灾?
  • 如何保证缓存的命中率,减少缓存穿透甚至“雪崩”?
  • 如何实现缓存的快速动态扩缩容?
  • 如何保证服务的低延迟、高可用?
  • 如何保证核心系统的稳定性?
  • 如何实时监控系统服务状态?
  • ……

微博数据库运维体系架构解析

业务架构

微博目前用户基数庞大,DAU和MAU均为数亿。从整个技术体系来看,微博核心总体分为前端和后端平台,端上主要是PC端、移动端、开放平台以及企业开放平台。后端平台主要是Java编写的各种接口层、服务层、中间件层及存储层。除此之外,微博搜索、推荐、广告、大数据平台也是非常核心的产品。从业务角度看,整体架构图如下:

图5  业务架构图

图5 业务架构图

这里以微博平台的业务为例,微博平台的服务部署架构如图6。

图6  平台服务部署架构图

图6 平台服务部署架构图

就平台业务而言,后端的资源每天承载着千亿次的写请求,万亿次的读请求,如MySQL在流量极端峰值的情况下承载着几十万,甚至上百万的QPS,面对这么大体量的业务压力,对于后端资源的稳定性和RTT也提出

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值