您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 其它相关文档 > 互联网公司技术架构资料.百度.贴吧架构实践
李瀚什么是贴吧大型综合社区−讨论区+视频区+相册区+游戏区+itieba+无线贴吧+..技术−前端+lamp+nosql+数据挖掘+反作弊+无线+..贴吧面对的技术挑战数据量–百亿贴子的存储,某些热门主题可达千万回复–P级的视频数据存储–来自浏览器每秒10w量级的浏览请求数–内部每秒数十w量级的更新请求转发可用性&数据安全性–7*24小时的互联网服务,容灾,冗余快速开发–快鱼吃慢鱼丰富的应用类型,迥异的访问模式–数百个服务–不同应用有不同要求:检索,推送贴吧的存储架构解决方案轻量型解决方案大数据存储解决方案服务集群管理方案贴吧的存储架构解决方案cover大部分日常快速开发需求轻量型解决方案Mysql+cache+flash–Mysql:持久化–Cache:加速–Flash:硬件scaleup目标–解决80%的日常产品开发需求Mysql-单机引擎选择引擎优化访问模式设计表设计性能–一般几百qps到几千qps不等–数据量1TMysql-分布式问题–横向扩展问题–Mysql实例增多,运维问题解决方案–统一接入–读写分离–主从屏蔽Cache-加速Cache的性能–5-10wqps,瓶颈在网卡–2-8法则Cache的种类–页面级cachevs单条数据的cache–Ex:贴子内容页vs贴吧图片页设计难点:cache更新局限性–只解决浏览瓶颈,不解决更新瓶颈Flash卡Flash卡:天下有免费的午餐–随机读写性能比磁盘有量级上的提升缺点–存储空间参考资料轻量型社区存储:mysql+cache+flash适用场景:常规需求–单机数据量几百G量级–流量亿量级优点–开发灵活快速–维护成本低缺点–通用存储,性能受限Cover某些特定的大数据量产品需求分区分区概念–垂直分区:按功能–水平分区:按key分区的目的–冗余–可扩展性–性能:将不同的访问模式分开,利于优化分区-消息队列(MQ)分区的实现:消息队列消息队列–Replication–可靠性:贴吧的消息队列集群–峰值数十w/s的转发量贴吧贴子存储数据规模–数十亿主题,百亿量级的贴子–热门主题支持1000w回复Mysqlisimpossible!贴吧贴子存储设计思路–分区–主题列表页和贴子列表页存储分离–关系存储和内容存储分离–水平分区贴吧贴子存储性能–随机存储和连续存储–内存patch–多种cache单机数据安全性–Binlog整体数据安全性–消息队列效果–单机可以跑满网卡Key-value存储视频存储–查询模式:–视频id-视频流–数据量P量级–典型的KV存储单机kv设计考虑–数据安全性–可和外围cache配合使用分布式kvKey-value存储优点–模式简单,易于分片–采用追加写,更新性能有保证缺点–不支持关系查询–开发成本大数据量存储解决方案适用场合–某些数据量特别大或者对性能要求特别苛刻的应用–某些需要特殊功能的需求优点–专用存储,性能可以极限优化缺点–开发维护代价较高–灵活性偏弱更多的例子:检索,推送,日志分析等解决机器和服务数量增多带来的管理问题负载均衡面向的问题–服务故障–蝴蝶效应–数据迁移–机器差异–等等负载均衡参考文章资源定位服务数量扩大带来的问题资源定位–资源中心:服务元信息存储–资源发现–资源路由设计思路–心跳机制–资源中心的单点问题和性能问题大规模社区存储方案贴吧技术blog诚邀各路英才加盟,这里提供全面的社区技术实践机会
本文标题:互联网公司技术架构资料.百度.贴吧架构实践
链接地址:https://www.777doc.com/doc-4374973 .html