已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
完全用nosql轻松打造千万级数据量的微博系统,七夜(李锦星)lijinxing,2010.12.17,重要小提示,架构说明本架构只是起着抛砖引玉的作用,只介绍大概的架构.本架构注重的是可以动态扩展集群种的服务器。关于图片附件,数据备份等架构,今天不作介绍.有兴趣的话可以找我讨论.已有类似本架构的微博系统已经在实际运用ID一致性的问题通常ID是由mysql自增来产生的.但是在分布式集群里这样的自增ID就带来各个服务器之间的一致性的问题。在本架构中的唯一ID是由rdtsc+两位随机整数拼接而成的64位整数唯一IDKeyGPSServerKGS是本架构重要组成部分.GPS大家都知道是定位的意思.发送一条数据的ID过去。KGS就会告诉你该ID所对应的数据存放在哪几台服务器上.KGS是基于TokyoCabinet存储,epoll事件驱动的单进程socketserver,所使用的开源工具,整体的架构图,架构图,原图请见架构.png,架构具体讲解访问流程图,看了架构图,到处都是线,是不是觉的很乱,眼花缭乱的.不要着急,现在我要以流程图慢慢的引领大家看清楚这个框架,名词解说,Handlersocket大家刚才可能比较奇怪,我的主题讲的是完全用nosql打造微博系统,怎么会又出现了mysql了?现在给大家介绍Handlersocket。HS是小日本写的一款mysql插件.HS避开了MySQL通讯协议,直接读取MySQL引擎。在多核、大内存、InnoDB引擎环境,性能直超memcached.HS能以Key-Value方式直接读写mysql引擎ZeroMQZMQ是高性能的消息队列服务器.单纯的发简单的小文本消息和python的函数调用一样快.publish操作是个很耗时的操作.所以让publish集群从ZMQ取发布信息,在后台并行publish,大大的提高发布效率.当publish速度跟不上的时候,只要增加publish服务器就行.KeyGPSServer刚才简单的介绍过KGS,我再稍微深入一点介绍一下KGS.KGS是用TC来做物理存储的.把Key跟服务器的关系记录在TC的hashdb里.这样做到多个服务器备份存储、权重、最小存储量优先级等一系列操作.,数据分布结构,RedisRedis主要存储的是发布者和订阅者之间的关系。关系结构主要是以队列+各种信息的64位唯一ID组成,所以存储量是很小的.虽然存储量很小,但是操作量很大.所以放在redis上,redis以纯内存的方式运行,不启用redis自身的热备份.在运行Redis服务器上,同时运行着backend同步进程。Backend的用TC来存储的.在信息发送给Redis的同时,也发送给backend进行存储.当redis重启的时候,从backend加载用户的结构关系.Redis的集群方式是以水平方式切换.简单来说就是每台Redis服务器存储着各自5w用户量.这个数值可以根据各自的情况定义MySQLmysql存储的是实际信息内容,比如微博信息,和用户信息.把操作很密集的数据,放在Redis里,相对小一点的就放在mysql里,MySQL表结构,Redislist数据结构,example4,Redis数据结构list,1.Following(有多少人订阅我的微博的列表),2.Followers(我订阅谁的微博的列表),3.Publish(我发布的微博消息列表),4.Subscribe(我订阅的消息包括我发布的信息),总结,明星会员问题所谓的明星会员问题,就是刘德华来咱微博开了个微博。他有成千上万个订阅者.他发布一条微博消息。那得一下子发布到成千上万个订阅者那。多来几个刘德华这样的明星微博,咱们服务器不是要死翘翘了。所以我这里有个publish集群,根据订阅者分为活跃用户,一般用户,半死不活用户.根据活跃度分到不同的快速publish服务器或慢速publish服务器里去.因为是纯内存的只是在redislist里加个信息ID。还是很快的理解不了本架构对于本架构理解的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2023年鸡西辅警协警招聘考试备考题库及答案详解(典优)
- 2023年重庆辅警招聘考试题库含答案详解(培优b卷)
- 2023年赤峰辅警招聘考试题库含答案详解(轻巧夺冠)
- 2023年衡水辅警招聘考试题库附答案详解(培优a卷)
- 遥控门锁系统行业深度研究报告
- 莫来石型粉行业深度研究报告
- 玻纤高温袋行业深度研究报告
- 中国螺旋台阶型铰刀项目投资可行性研究报告
- 2025企业员工的劳动合同模板
- 永磁电机磁钢行业深度研究报告
- 2025年《养老护理员》高级练习题+参考答案
- 2025年河北保定徐水区妇幼保健院公开招聘专业技术人员25名笔试考试备考试题及答案解析
- 全国大学生职业规划大赛《护理》专业生涯发展展示【高职(专科)】
- 2026年中考备考工作方案
- 蒙牛产品发布会方案
- 体育场馆改造项目方案
- 企业安全生产风险评估报告
- GB/T 46413-2025遥控潜水器作业规程
- 汽车文化考试题及答案
- 2025年新员工入职协议书
- 言语治疗师的课件
评论
0/150
提交评论