社区产品技术架构和设计思路的演变_第1页
社区产品技术架构和设计思路的演变_第2页
社区产品技术架构和设计思路的演变_第3页
社区产品技术架构和设计思路的演变_第4页
社区产品技术架构和设计思路的演变_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、社区产品技术架构和设计思路的演变纪鹏程 jipengcheng我2007年 2011年 百度贴吧后端模块开发和架构设计2011年 至今 赶集网赶集交友瓜子社区社区产品特点用户数据、帖子数据、各种排序、各种消息等千万级以上的用户,百万级以上的日登陆写入的数据需要立即能看到以贴吧为例,每天2000万的发帖量,高峰时间500帖/秒写入量大1实时3逻辑复杂4用户基数大2速度!L1 cache reference 0.5nsL2 cache reference 7nsSend 1M bytes over 1Gbps network 10msRead 1M sequentially from memory

2、 0.25msDisk seek 810msRead 1MB sequentially from disk 2025ms基本原则减少IO读写-充分理解业务的读写比例合理用好cache -好钢要用在刀刃上逻辑和数据分离 -逻辑是变化的,数据是不变化的可扩展性-系统能否通过加机器就可以解决流量增加问题机械磁盘性能性能差,一般应用都是随机写性能高,应用场景少,一般用在日志记录上顺序写随机写SSD vs Disk随机写性能强顺序写不如普通磁盘每个区域擦写次数有限性价比不高适合数据量中等,且有大量随机写的应用拉链模式常用于存储逻辑数据存放在内存中,定期dump磁盘(mmap)用于实现高速、查询模式固定的

3、应用用块链来节约空间拉链模式-案例Merge模式数据写到内存中定期和磁盘中的数据进行合并写到新的地方常用到论坛的帖子模式上,Google的LevelDB使用的就是该思想Cache无处不在的cache浏览器cache:客户端代理服务器cache:网络节点CDN, Squid:web servermodel层cache:memcached、redis磁盘cache:操作系统Cpu cache:硬件多种多样的cache解决方案分布式cache vs 本地cache磁盘cache vs 内存cacheRedis -REmote DIctionary ServerRedis vs Memcached持久

4、化-aof、RDB-主从库并发度-epoll、libevent、selectLogic vs DataInnoDB vs MyISAM并发写事务聚簇索引运维合理使用聚簇索引create table ipush_logic(eid int unsigned not null,uid int unsigned not null,idx smallint not null,.op_t int unsigned not null,primry key(eid)engine=InnoDB;create table ipush_logic(eid int unsigned not null,uid int

5、 unsigned not null,idx smallint not null,.op_t int unsigned not null,primry key(uid, idx)engine=InnoDB;NoSQL对MySQL的冲击HadoopCassandraMongoDBMongoDB大行其道schema freeauto sharding高速写对二维地理位置支持数据拆分性能考虑水平、垂直按业务数据拆分-案例MongoDB的分区Timeline问题推拉推拉方案利弊逻辑简单;浏览时不需计算,效率高;空间浪费大;关注变化时需要重做数据;没有空间浪费;关注变化时不需要重做数据;计算复杂;实时计算量大,需要充分利用缓存;推拉Twitter的数据1亿活跃用户Timeline接口2万QPS推送平均1ms,99% 4ms以内每天2.5亿条新Tweets,平均3千/秒,峰值1万以上每天260亿次分发,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论