ImageVerifierCode 换一换
格式:DOCX , 页数:12 ,大小:130.84KB ,
资源ID:5626938      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5626938.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(QQ宠物产品总体技术方案.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

QQ宠物产品总体技术方案.docx

1、QQ宠物产品总体技术方案QQ宠物总体技术方案拟制:日期:审核:日期:版本号:XXX V1.0 腾讯科技(深圳)有限公司修订日期修订内容协议版本修订人1背景QQ宠物是公司当前给以重大盈利期望的拳头产品之一。目标是建立成全球第一的在线虚拟宠物养成类休闲游戏,成为公司主要的盈利点之一。2概述2.1范围该文档主要描述QQ宠物系统的技术架构,作为架构评审的基础。2.2引用标准2.3术语和定义名词解释2.4符号和缩略语缩写英文描述中文描述3总体架构设计3.1设计原则3.1.1产品关联性设计与OI_DB扩展标志位的同步用户注册宠物,宠物系统将主动通知oi_db设置标志位。3.1.2产品依赖性设计使用serv

2、er-bench作为server framework,分离业务逻辑和通信,进程调度等基础设施使用cplib, qslog, tlib库3.2设计目标3.2.1路标规划阶段开始时间完成时间阶段目标和工作进度指标2.02005.3-2005.62005.6完成基本功能2.12005.6-2005.72005.7增加了宠物结婚功能3.3系统需求3.3.1系统软件需求slackware linux kernel 2.4.xmysql 4.03.3.2系统硬件需求Web服务器/PetOnline服务器/PetInfo服务器/领养关系服务器/宠物炫图片/客户端安装包/资源下载服务器: LENOVO R51

3、0-5112标配:CPU P4 2.4G2内存:4G DDRRAM 硬盘:36G 1 NORAIDDB服务器:DL380G3标配:CPU P4 2.8G2内存:1G HPDDRRAM 2硬盘:140G RAID5(140G)3.3.3系统功能需求宠物领养:用户初始得到宠物。记录QQ号码的领养关系,同步标志位到oidb宠物在线: server维持宠物在线状态,自动根据卫生值,饥饿值决定宠物生病,根据宠物心情值和在线时间增长宠物的成长值。基本养成:提供给用户通过PetClient和PetServer的交互,给虚拟宠物喂食、洗澡、吃药,属性查看的功能。宠物如果养育不当会死亡,死亡后可以抛弃。宠物社区

4、:宠物社区是一个web应用,用户通过嵌入宠物客户端的ie控件来访问,在社区上购买药品,食品和日常用品,以及装扮用的房屋等道具和学习宠物炫。社区还是结婚,打工等功能的入口。在社区上还提供用户查询、修改宠物信息的功能,查看宠物元宝帐户的功能和查看元宝消费记录的功能。宠物打工:打工是一个相对独立的子系统,目前只在社区上有入口。宠物打工是宠物的一种状态,这种状态持续指定的时间,并且给用户提供指定数量的元宝以及增加指定属性的值。用户通过社区上的入口进行打工,打工入口为一个CGI程序,负责检查是否符合打工的条件。打工时要求宠物的消耗比正常状态多。宠物结婚:符合一定条件的宠物双方可以结为夫妻关系。结婚后的宠

5、物可以生蛋,蛋必须赠送给自己的好友。相当于给好友开通宠物。宠物装扮:宠物使用买来的房屋作为桌面上宠物的背景s宠物炫:宠物炫是QQ聊天时有宠物的一方可以向好友发送由宠物表现的丰富表情,动作和语言。用户可以定制语言。宠物在QQ上的资料查询:在QQ客户端,用户可以通过查询对方的资料看到对方的宠物信息,包括对方是否有宠物,宠物的级别,宠物的名字,性别,婚否等等。宠物在QQ上的表现:用户在AllInOne聊天窗口中和宠物资料界面上都可以看到对方和自己的宠物图片。s3.3.4系统性能需求最小化容量: 一台OnlineServer服务器上同时支持50000个在线宠物一台DB能够支持50万只宠物注册数一台We

6、bServer能够支持25000只在线宠物一台AdoptMapServer能够支持1.5亿只注册用户数一台Middled能够支持5万只在线宠物数一台PetInfoServer能够支持100万只注册宠物一台宠物炫图片server能够支持100万只注册宠物一台资源下载server能够支持每天新增2万只宠物一台客户端下载server能够支持每天新增10万只宠物最大化容量支持3000万只宠物注册用户数最高在线400万只宠物响应速度要求用户登陆时间5s用户操作的响应时间应该小于1秒宠物状态不一致时延不超过5秒宠物炫发送响应时间不超过5秒3.4系统总体架构3.4.1系统物理架构3.4.2系统逻辑架构4关键

7、技术分析4.1业务模型分析4.1.1目标用户针对QQ用户群中细分的青少年人群低年龄层用户群4.1.2用户入口桌面QQ面板上的宠物图标4.1.3消费系统策略宠物元宝和元宝帐户宠物元宝由用户打工或者进行某些任务后得到,相当于免费赠给用户的货币。用户可以使用元宝购买宠物系统中的物品宠物元宝和QB的关系当用户的元宝数量不足时,可以直接使用个人帐户中的Q币来支付购买所需的金额。这种情况下,1QB相当于100元宝。由于宠物系统中的物品定价使用元宝,大多数都不超过100元宝,因此,相当于非常小额的QB交易。这就体现出了宠物系统的消费特点:小金额,大交易量。4.1.4产品依赖关系QQ上的入口和表现形式其他业务

8、使用的开通宠物的接口4.1.5典型业务过程典型操作1.通过QQ面板打开宠物客户端2.宠物客户端检查是否需要升级,取得领养关系,取得是否需要升级资源包,完成必要的下载升级,登录3.登陆后显示宠物目前的状态,如果饥饿提示用户要喂食,疾病和清洁状况都有类似的提醒。4.用户使用快速喂食界面或者进入社区,在储藏室里选出食物等物品给宠物使用(或食用)5.用户进入社区给宠物看病6.用户进入社区购买宠物使用的物品7.用户在社区中更换宠物的房屋8.用户在社区中学习宠物炫9.用户在社区中打工挣取宠物元宝10.用户在社区中查看排名11.用户在社区中查看其他宠物的资料12.用户在社区中管理自己的物品13.用户在社区中

9、管理自己的元宝帐户14.用户在社区中求婚,查看求婚和被求婚记录,结婚。15.用户查看自己的宠物蛋信息,赠送宠物蛋给好友。4.2用户模型分析4.2.1用户基础信息按照每台机器承受5万只宠物同时在线,承受20万只宠物的资料查询请求来计算。大约600次交互/ 秒 喂养:Hello包 200次/秒(每用户5分钟一次) 喂食,洗澡和吃药:30次/秒(每用户每小时/2次) 通过Web的交互:20次/秒 客户端刷新:50次/秒(每用户每小时3-4次) 登录:10次/秒 push消息:50次/秒(饿,脏,病,成长等等都会下发push消息) Info查看:120次/秒 (每台机器5万在线x8 = 40万) x

10、100好友/每人 x 1/10一小 时内会查看一次CGI请求 :150次/万人/秒,使用6台机器,一台WebServer可以支撑2.5万在线,大约每秒250次cgi请求。DB数据量 每个用户的数据包括: 1.宠物的基本信息表(每个宠物一条记录) 2.宠物的成长信息表(每个宠物一条记录) 3.喂养物品表(每种物品一条记录) 4.装扮物品表(每种物品一条记录) 5.打工信息表(每次打工一条记录) 字典表: 喂养物品,打工场景,宠物炫,装扮物品,处方,规则等等10万新用户在一小时以内使用宠物客户端大约每秒60次请求。宠物客户端250K大小,资源包2M左右。在控制总量而不是放开领养请求的情况下,每天增

11、加2万新用户,最多每天增加10万新用户。4.2.2用户操作信息登录和维持在线/喂养流程:1.客户端向领养关系server请求uin对应的petid,每个请求大小100byte,返回包150byte2.客户端向OnlineServer发送登录请求包,每个包100bytes3.OnlineServer向DB请求load数据,数据包300bytes4.OnlineServer将登陆后的状态信息返回客户端,数据包大小也是300byte5.客户端向OnlineServer发送hello包,数据大小80byte6.OnlineServer向客户端回应hello包,数据大小300byte7.状态机serve

12、r向QQ发送宠物状态改变的push消息,数据大小200byte8.客户端向OnlineServer发送喂食、洗澡、吃药请求,数据大小100byte9.OnlineServer返回消耗物品后的结果,数据包大小300bytes需要访问Online服务器: 85次/(用户*天),web操作:web操作是用户访问宠物社区所进行的操作,包括查看和管理属性,查看和管理物品道具技能,查看元宝帐户,购买物品,学习技能,装扮,打工,结婚等等。需要访问WebServer:100次/(用户*天)需要访问WebOnline:10次/(用户*天)由于web上的静态对象不通过宠物系统,而是分布在专门的图片server上,

13、因此web访问产生的流量可以忽略不计4.2.3用户流量信息主要产生流量的是资源下载和客户端下载。峰值每小时新增1万用户,资源包大小为3M,平均每个下载耗时3分钟,观察到的流量峰值达到250Mbp4.3系统模型分析一个典型的登录交互时序如下:状态改变流程4.4性能容量分析公式计算结果备注存储要求(每人的item和合成图片的个数)*每个文件平均大小*注册用户数20K*1.2 *10M= 420G在线server要求每5w人内存使用4 CPU loading200M1带宽要求(内网)(server间交互次数 * 平均数据包大小*2)18K * 1K * 2 * 8 = 300mbps计算的峰值时的出

14、带宽带宽要求(外网)下载带宽200mbps计算每天放出10w的峰值时的出带宽机器要求关键负荷分析在线server计算量4.4.1总计每增加20w免费用户需要:DB + Middled + NFS 一台Online 一台Web两台4.5负载均衡分析4.5.1负载均衡策略PetInfo,接入服务器, DB, Middle按照QQ号码取模散列PetAdoptMap按照QQ号码段散列WebServer,资源下载Server,宠物炫图片Server通过DNS轮换进行负载均衡4.5.2异地分布策略先暂时不支持异地分布。4.6容灾备份分析5部署方案目前的大部分机器都部署在深圳枢纽和南山机房。6风险分析及规避

15、措施总的来讲,运营的风险可以分成硬件故障和软件故障两大类。硬件的故障包括机器的故障、磁盘故障、IDC线路故障,黑客攻击等。 软件的故障包括数据库失效、程序失效等等。6.1硬件故障6.1.1机器、磁盘故障对于磁盘故障,DB数据采用每天夜间进行增量备份, bitmap文件每天备份。 6.1.2IDC线路故障和黑客攻击对于IDC线路故障和黑客攻击,这个没有方法完全避免问题,只能是尽量减少损失。以后将会支持OnlineServer的跨地域分布,当一地的机房遭受攻击,可以暂时将用户配置到另一地区登录。6.2软件故障对于软件故障我们现在依靠端口监控、日志监控,定时重起,nagios告警等方法规避。7备选方案描述本产品的备选方案,可略

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1