已阅读5页,还剩25页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
,拍拍后台架构介绍,陈志军2015-9-18,1,1,拍拍后台架构介绍-大纲,纵向-技术架构AppPlatform中间件模型负载均衡/容灾方案MsgQ监控体系发布流程横向-SOA案例-多客服系统介绍对斗鱼服务器模型的思考,2,纵向-技术架构,nginx(+前端页面缓存),DB,apache/Tws,AO可复用的业务、聚合服务,AO+DAO数据服务,同步/异步,同步/异步,DAL,DB,分布式数据缓存,读/写,写,分布式文件系统,索引服务,DB,3,AppPlatform中间件,表现层:cgiwebservice:基于webplatform的cgi,运行于多进程模式的tws平台上template:符合googletemplate的页面模板,供cgi或webservice用来渲染页面PO:业务逻辑层和cgi或webservice之间进行数据传递的类,该类由AO组织,由cgi或webservice渲染页面时使用应用层:AO:业务逻辑实现,运行于进程模式的Appplatform上(异步能力)IDL:业务对外提供的接口描述文件,可以通过autogen生成C+,java以及PHP的代码领域层、持久层BO:领域对象DAO:数据访问层实现,处理和事务相关的相关逻辑;,运行于进程模式的Appplatform上数据层:索引:基于sphinx构建的通用索引系统,提供高性能的复杂查询服务TTC,TMEM,TDB:公司级的云设施,多进程的运行模式,4,AppPlatform中间件,Netio,AO0 x?,AO0 x?,AO0 x?,DAO0 x?,DAO0 x?,BackNetio,Container,FrontKey,BackKey,pth用户级线程,调度,配置中心,请求,回应,5,AppPlatform中间件,6,职责单一、明晰快慢分离代码、模块、组件复用平行扩展集中监控使用接口描述语言,方便系统间集成重复代码使用工具自动生成业务代码与平台代码分离,简化业务逻辑使用协程方式,简化业务逻辑和代码编写,AppPlatform中间件,7,IDL文件,8,系统间的集成,IDL提供了充足的元数据信息autogen,业务协议的自动生成C+phpjavaC#delphipython通过tcp/udp进行通讯,9,10,11,负载均衡与容灾,服务请求路由方式/usr/local/c2csvc/global_conf/ServiceConfig.xml配置:Route=Mod(按路由key取模)Route=Mod+L5(按路由key取模+L5负载均衡),12,负载均衡与容灾-L5,13,负载均衡与容灾-L5,14,负载均衡与容灾-L5,15,MsgQ,应用程序或组件之间的一种通讯方式分布式的是“可靠”的,16,MsgQ-系统拓扑架构,Agents和Servers集群构成了MsgQ的消息服务总线.,17,接入,CGI,AO,DAO,idmaker,DAL,频率限制,分布式cache,WebPlatform,nginx插件,配置中心,统计Server,权限系统,敏感词,LogServer/模调proxy,AppPlatform,错误码,MsgQ,其他组件,18,监控体系,监控一切可监控的,19,发布流程,EOS发布系统:cgi,html,js,picrpm打包系统:ao,dao配置中心:路由切换,配置变更、DB管理等由系统来保证:(保证环境一致性)dev-beta-gamma-idc灰度发布,20,横向-SOA,面向服务的体系结构是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种各样的系统中的服务可以使用一种统一和通用的方式进行交互。可从外部访问随时可用粗粒度的服务接口分级松散耦合可重用的服务服务接口设计管理标准化的服务接口支持各种消息模式精确定义的服务契约,21,案例-多客服后台架构,智能的、复杂的、大QQ,22,案例-多客服后台架构,23,案例-多客服后台架构,统计数据总开通卖家数:3W+总开通工号数:12W+活跃卖家数:2W+活跃工号数:10W+聊天客户数:60W+/日接收消息数:400W+/日发送消息数:450W+/日,不同类型的服务部署在不同类型的机器上,以节省硬件成本。,24,服务器类型介绍,25,对斗鱼服务器模型的思考,性能、扩展、容灾等方面的思考代码维护方面的思考,26,现有模型,其它服务器,MsgServer,其它服务器,netmsg,netmsg,rpc,rpc,27,性能、扩展、容灾等方面的思考,服务间通信链条长,影响性能;且MsgServer容易成为瓶颈数据都缓存在本地,无法做到平行扩展、无法容灾服务无法做快慢分离,慢速服务会拖累整体系统无法按业务逻辑划分模块,导致ChatRoom过于庞大,引起诸多问题消息队列(RPC请求)放在内存中,服务重启时,必然导致信息丢失服务器信息同步没有确认机制,不能保证一致性,28,代码维护方面的思考,存在的问题(引自拍拍)每个AppServer都有大量的重复代码,增加了应用开发人员的负担;开发人员不可避免地需要编写调试协议打解包代码,花费大量的时间和精力;底层代码一旦有调整,需要重编各个AppServer;每个AppServer都由不同的开发人员负责,可能会存在代码风格和日志格
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年汽车后市场智能保养报告
- 2026年农业现代化报告:政策支持与产业发展趋势
- 2026年智能零售无人商店创新报告
- 2026年航空航天:商用飞机研发创新报告
- 2026年农业行业人力资源报告及行业人才需求预测
- 2026年花鸟鱼虫市场年度报告
- 2026年新型建筑材料市场深度分析报告及未来发展机遇
- 2026年绿色建筑创新实践与行业发展趋势报告
- 粥品制作技术试题及答案
- 2026年机电技术应用(电机维修实操)试题及答案
- 部编版八年级上册语文高频考点速记总结
- 生产净化车间管理制度
- (2025年)攀枝花市米易县招聘警务辅助人员考试真题及答案
- 非标自动化合同范本
- 雨课堂学堂云在线《中共中央延安十三年史(陕西师大 )》单元测试考核答案
- 化工类高级工程师答辩公共题
- 幼儿园小班数学活动《水果在哪里》课件
- 【蓝豚医陪】蓝豚医陪陪诊服务发展研究报告
- 初中英语人教版八年级下册Unit9 Section B 1a-1d说课教案设计
- 【山东省人工智能协会】家庭大脑白皮书2025-智慧生活空间全链路场景体验重塑
- 山东名校考试联盟2024−2025学年高二上学期期中检测数学试题含答案
评论
0/150
提交评论