大型互联网公司新浪微博技术架构分析与设计 .pdfVIP

大型互联网公司新浪微博技术架构分析与设计 .pdf

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

大型互联网公司新浪微博技术架构分析与设计

新浪微博,作为当今国内最大的基于社交媒体之一,我们就不用

在这赘述了。

今天我站在架构的角度上,从技术跟设计方面给大家通俗的讲一

下,如果不对,请指出,我本是事实的角度,一定回承认,改正,谢

谢。

12月31日跨年夜,网友再次刷新微博发送峰值。根据微博方面

的数据,2016年第一分钟,微博用户共发出883536条微博,超过去年

同期。

跨年期间,相关微博互动量达1.38亿,2947万用户发布4414万

条微博,整体阅读量达到106亿。微博推出的#哈喽2016#新年许愿

活动,两天里收集了166万多条网友的新年愿望,阅读量超过3亿。

如此巨大的用户规模和业务量,需要高可用(HA)、高并发访问、

低延时的强大后台系统支撑。

微博平台第一代架构为LAMP架构,数据库使用的MyIsam,后

台用的php,缓存为Memcache。

随着应用规模的增长,衍生出的第二代架构对业务功能模块化、

服务化、组件化,后台系统从php替换为Java,逐渐形成面向服务的

SOA架构(面向服务的架构),在很长一段时间支撑微博平台业务发

展。

SOA架构

在此基础上又经过长时间的重构、线上运行、思索与沉淀,平台

形成了第三代架构体系。

我们先看一张微博的核心业务图(如下),是不是非常复杂,但

这已经是一个简化的不能再简化的业务图啦,第三代技术体系就是为

了保障在微博核心业务上快速、高效、可靠的发布新产品新功能。

新浪微博心业务图

第三代技术体系

微博平台的第三代技术体系,使用正交分解法建立模型,在水平

方向,采用典型的三级分层模型,即接口层、服务层与资源层,在垂

直方向,进一步细分为业务架构、技术架构、监控平台与服务治理平

台,接着看一下平台的整体架构图。

第三代技术体系

正交分解法将整个图分解为3*4=12个区域,每一个区域代表一

个水平维度与一个垂直维度的交点,相应的定义这个区域的核心功能

点,比如区域5主要完成服务层的技术架构,下面详细介绍水平方向

与垂直方向的设计原则,尤其重点介绍4、5、6中的技术组件及其在

整个架构体系中的作用。

水平维度的划分,在大中型互联网后台业务系统的设计中非常基

础,在平台的每一代技术体系中都有体现,这里还是简单介绍一下,

为后续垂直维度的延伸讲解做铺垫:

1.接口层主要实现与Web页面、移动客户端的接口交互,定义统

一的接口规范,平台最核心的三个接口服务分别是内容(Feed)服务、

用户关系服务以及通讯服务(单发私信、群发、群聊)。

2.服务层主要把核心业务模块化、服务化,这里又分为两类服务,

一类为原子服务,定义是不依赖任何其他服务的服务模块,比如常用

的短链服务、发号器服务都属于这一类,图中使用泳道隔离,表示它

们的独立性,另外一类为组合服务,通过各种原子服务和业务逻辑的

组合,完成的Composite服务,比如Feed服务、通讯服务除了本身

的业务逻辑,还依赖于短链、用户、以及发号器服务。

3.资源层主要数据模型的存,包含通用的缓存资源Redis和MC,

以及持久化数据库存储MySQL、HBase,或者分布式文件系统TFS

以及SinaS3服务。

水平分层有一个特点,依赖关系都是从上往下,上层的服务依赖

下层,下层的服务不会依赖上层,构建了一种简单直接的依赖关系。

与分层模型对应的,微博系统中的服务器主要包括三种类型:前

端机(提供API接口服务),队列机(处理上行业务逻辑,主要是数

据写入),存储(mc、mysql、mcq、redis、HBase等)。

垂直延伸技术架构

随着业务架构的发展和优化,平台研发实现了许多卓越的中间件

产品,用来支撑核心业务,这些中间件由业务驱动产生,随着技术组

件越来越丰富,形成完备的平台技术框架,大大提升了平台的产品研

发效率和业务运行稳定性。

区别于水平方向上层依赖下层的关系,垂直方

您可能关注的文档

文档评论(0)

minghui666 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档