评点一下新浪微博的技术架构
来源:互联网 发布:oppor11plus数据流量 编辑:程序博客网 时间:2024/05/17 00:03
你要问我新浪微博有什么技术压力。
我觉得,本质上:
第一,如何快速共享数据,如何快速的将new message在网状社区中传递开来。
第二,长期大量积累下来的数据如何分布,分散储存,保证性能。数据库的横纵切分。
第三,机房的多备份,多备份机房之间的同步策略。
第四,业务上的实时性是不是必须,是否能够根据业务的重拍,将一部分业务异步化,减轻系统压力。
第五,高并发的请求重压之下,如何能够保证相应速度。
新浪微博首席架构师杨卫华的讲座上很好的解答了以上的这些问题。
具体参见以下资料:http://tech.sina.com.cn/i/2010-11-16/14434871585.shtml
问题:[第一,如何快速共享数据,如何快速的将new message在网状社区中传递开来。]
回答:采取push的方法,有选择性的,向长期活跃的用户push new message。
手机上的app中,每个app都会和服务器建立长连接,一旦平台API中有new message,就会实时推送给app
问题:[第二,长期大量积累下来的数据如何分布,分散储存,保证性能。数据库的横纵切分。]
回答:weibo是非常有时效性的业务数据。绝大多数的数据请求都集中在最近,所以数据可以按月份横切分。同时可以在月份横切的基础上建立二级索引表。
同时,绝大多数的请求和发帖都集中在单一的省份。因此在纵切分上,在每省都建立了独立的数据中心。
问题:[第三,机房的多备份,多备份机房之间的同步策略。]
回答: 每个机房都不是单点部署,单个机房的数据更新之后,都会广播到全部的所有机房,进行快速同步。
问题:[第四,业务上的实时性是不是必须,是否能够根据业务的重拍,将一部分业务异步化,减轻系统压力。]
回答:发weibo本身这个事情,需要经过漫长的事务链条,所以我们可以打断这个链条,将其异步化,在接收到weibo以后将其推入messageQueue,然后让其异步更新处理。
问题:[第五,高并发的请求重压之下,如何能够保证相应速度。]
回答:广泛的应用缓存,cache,memcached,内存数据库,将数据放在离CPU越近的地方越好。
以上,蒋彪
- 评点一下新浪微博的技术架构
- 评点一下新浪微博的技术架构
- 评点一下新浪微博的技术架构
- 新浪微博技术架构
- 新浪微博技术架构
- 新浪微博技术架构
- 新浪微博技术架构
- 新浪微博技术架构
- 新浪微博技术架构
- 新浪微博技术架构
- 新浪微博技术架构
- 新浪微博技术架构
- 新浪微博技术架构分析-转载
- 新浪微博技术架构分析
- 新浪微博技术架构分析-转载
- 新浪微博技术架构分析
- 新浪微博技术架构分析-转载
- 新浪微博技术架构分析
- VM虚拟机改硬盘大小的方法
- 怎样成功包养喵星人~我和喵星人不得不说的相处之道
- Win7下使用Cygwin+Gitosis搭建GIT服务器
- 函数传值 传地址 传引用的区别
- jquery遮罩层
- 评点一下新浪微博的技术架构
- 对象的创建方法之三---组合使用构造函数模式和原型模式(最常用的模式)
- linux开机启动服务和chkconfig使用方法
- Unity3D学习 愤怒的小鸟之Play界面(四)
- Android游戏开发基础part9--游戏数据存储
- 微软官方Office2010SP1 直接下载地址
- jquery.autocomplete.js--options参数介绍
- Insertion Sorting
- 程序员职业生涯探讨