互联网公司技术架构系列资料_互联网公司技术架构资料.新浪微博.微博架构与平台安全

互联网公司技术架构系列资料_互联网公司技术架构资料.新浪微博.微博架构与平台安全

ID:46767423

大小:1.52 MB

页数:66页

时间:2019-11-27

互联网公司技术架构系列资料_互联网公司技术架构资料.新浪微博.微博架构与平台安全_第1页
互联网公司技术架构系列资料_互联网公司技术架构资料.新浪微博.微博架构与平台安全_第2页
互联网公司技术架构系列资料_互联网公司技术架构资料.新浪微博.微博架构与平台安全_第3页
互联网公司技术架构系列资料_互联网公司技术架构资料.新浪微博.微博架构与平台安全_第4页
互联网公司技术架构系列资料_互联网公司技术架构资料.新浪微博.微博架构与平台安全_第5页
资源描述:

《互联网公司技术架构系列资料_互联网公司技术架构资料.新浪微博.微博架构与平台安全》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、微博架构与平台安全演讲者@TimYang微博架构发展•新浪微博从0~50,000,000用户•技术架构经历了3个阶段第1版技术特点•微博本质是解决发表/订阅问题•第1版采用推消息模式,将发表/订阅简化成insert/select问题技术细节•典型LAMP架构•MySQL:单库单表,MyISAM•MPSS(Multi-PortSingleServer)快速成长•用户快速增长•出现发表延迟现象,尤其是明星用户架构演变•分发推送是造成发表延迟首因•模式改进•数据规模增大也带来一定延迟•规模增大:数据拆分•锁表问题:更改引擎•发表过慢:异步方式第2版投递模式优化•推模

2、式改进,不需要推送到所有用户•存储及发表峰值压力减轻•投递延迟减小数据拆分•优先按时间维度拆分•内容和索引分开存放•内容使用key-value方式存储(NoSQL)•索引由于分页访问,拆分有挑战异步处理•发表异步化•发表速度及可靠性得到提高•使用MemcacheQ•增加statsqueue,适合大规模运维技术细节•InnoDB引进,避免锁表烦恼•PHP中libmemcached代替memcache•在高并发下稳定性极大提高高速发展•系统问题•单点故障、“雪崩”•访问速度,国内复杂网络环境•数据压力及峰值•MySQL复制延迟、慢查询•热门事件微博发表量,明星评论

3、及粉丝如何改进•系统方面•允许任意模块失败•静态内容CDN加速•数据压力及峰值•将数据、功能、部署尽可能拆分•提前容量规划平台化需求•Web系统•有用户行为才有请求•API系统•轮询请求•峰值不明显•用户行为很难预测•系统规模持续增大•平台化需求•新的架构如何设计?•“Breaklargecomplexsystemsdownintomanyservices...google.comsearchtouches100sofservices(ads,websearch,books, news, spelling correction...)”•-JeffDean,G

4、oogleFellow服务化•服务→接口→应用第3版平台服务•平台服务和应用服务分开,模块隔离•新微博引擎,实现feedcache分层•关系多维度索引结构,性能极大提高•计数服务改成基于偏移,更高的一致性、低延迟基础服务•DB冷热分离等多维度拆分•图片等存储去中心化•动态内容支持多IDC同时更新高性能架构•50,000,000用户使用新浪微博•最高发表3,000条微博/秒•姚晨发表一条微博,会被3,689,713粉丝读到(11月10日数据)问题本质•解决高访问量、海量数据规模下•易于扩展、低延迟•高可用异地分布能力•每天数十亿次Web及接口请求•请求内容随时变

5、化,结果无法cache•如何扩展?思路•去状态,可请求服务单元中任意节点•去中心化,避免单点及瓶颈•可线性扩展,如•100万用户,10台服务器•1000万用户,100台服务器•减少模块耦合实时性高性能系统具备低延迟、高实时性实时性核心是让数据离CPU最近,避免磁盘IO“CPU 访问L1就像从书桌拿一本书,L2是从书架拿一本书,L3是从客厅桌子上拿一本书,访问主存就像骑车去社区图书馆拿一本书。”-余锋@ecug2010淘宝网核心系统专家,Erlang技术专家微博cache设计高可用•好的架构具有高可用性•业界•AmazonS3:99.9%•AmazonEC2:9

6、9.95%•Facebook:n/a•微博平台~99.95%(5小时/年)如何达到•容量规划•图表•监控及admissioncontrol...•接口及资源监控,7x24•业务回环测试,监测业务逻辑有效性•集成测试图表通过图表了解系统容量接口监控•curl/各地请求情况及响应时间•流量异常/accesslog•non-200结果/失败率/exceptions•将监控指标量化•类似mysqlsecondsbehindmaster•“Manyservicesarewrittentoalertoperationsonfailureandtodependuponhum

7、aninterventionforrecovery,about20%ofthetimetheywillmakemistakes.•Designing for automation.”•-JamesHamilton,VPofAmazon自动化•大规模互联网系统运作需要尽可能自动化•发布及安装•服务启用、停止•故障处理•前提,去状态化,允许单点故障及重启•“SystemadministrationatGoogleusuallyhave1weekof"oncall"duty,andtheother5weeksarespentmakingimprovementstom

8、aketheoncallportion

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。