




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
服务器开发模式常用模型和技巧What’stheserver?应用服务器需要解决的问题通讯问题-快慢之道并发问题-轻重之道存储问题-张驰之道载衡问题-分合之道可用问题-缓急之道平衡是关键通讯问题-快慢之道建立合适的通讯模型选择正确的通讯方式制定合理的通讯协议快要有快的手法慢要有慢的道理信息传输特性完整性-丢点行么?顺序性-乱点行么?时效性-迟点行么?解决完整性问题信息分割机制丢包检测机制可靠重传机制文件服务是经典的完整性案例解决顺序性问题数据排队机制丢包检测机制可靠重传机制远程终端服务是经典的顺序性案例解决时效性问题过时检测机制状态同步机制应用纠错机制视频流服务是经典的时效性案例TCP还是UDP?面向连接流模型滑动窗重传机制有流量控制保证传输顺序协议层无边界丢包影响传输速度点对点数据报模型协议层不做重传无流量控制不保证传输顺序协议层边界丢包影响传输成功率互控型服务模模型C<->S之之间互为因果果高完整性要求求高顺序性要求求低时效性要求求选择TCP方方式通讯应用层仅检测测和简单处理理传输成功或或失败互控型服务也也叫事务型服服务单控型服务模模型C->S单向向控制高完整性要求求低顺序性要求求低时效性要求求可以选择UDP方式追求求更快速度应用层需要丢丢包检测和有有效重传机制制互不控型服务务模型C.S互不控控制低完整性要求求低顺序性要求求高时效性要求求采用UDP通通讯方式应用层需要有有合适机制保保证数据一致致性协议制定的基基本原则流量控制校验法则向上的扩展性性向下的兼容性性几种协议载体体XML方式是是扩展性最好好的文本协议议载体TVL方式是是扩展性最好好的二进制协协议载体XML方式实实例<?xmlversion='1.0'?><Client_Server><commandid=“GetAddress”type=“Request”><params><param1type=“Integer”>1234</param1><param2type=“String””>ShenZhen</param2>…</params></command></Client_Server>XML方式优优缺点扩展性好可读性好解析方式统一一大量库支持开放式协议信息密度低占用带宽大处理较耗时TLV方式实实例0x000x120x810x040x000x000x000x030xA20x080x810x020x000x040x830x020x000x05T(AG)::表示字段的的标签,包含含子编号和类类型信息L(ENGTH):表示示字段的长度度V(ALUE):表示字字段的内容TLV方式优优缺点自解码方式扩展性好统一方式解析析信息密度大编解码效率高高可读性较差电信设备协议议方式,未被被广泛支持并发问题-轻轻重之道合理选择进程程模型合理设计调度度模型优化进程关键键路径完美境界在均均衡如何让CPU占用100%?有没有多个CPU是长相相问题设不设计多进进程是人品问问题平衡的进程结结构充分利用用CPU资源源多进程的误区区多进程是充分分利用系统资资源的手段多进程是改善善客户响应速速度的手段多进程是实现现功能合理分分布的手段最理想的架构构是每进程占占用一个CPU转到吐血血多进程不是简简化程序设计计的手段过多的进程导导致上下文切切换开销增大大和系统不稳稳定为每事务创建建一个进程是是糟糕的设计计要避免单进程程阻塞导致系系统停止吞吐吐如何让CPU占用0%??磁盘I/O和和循环是影响响性能的主要要因素剔除垃圾操作作简化关键路径径优化关键路径径中的耗时算算法执行频率最高高的路径就是是关键路径常用的并发模模型迭代模型并发模型分发模型线程池模型迭代模型最原始的服务务模型单进程运作,,通讯和业务务逻辑并存一般采用非阻阻塞方式工作作简单并发模型型主进程处理连连接请求,有有新连接到来来时创建子进进程处理数据据请求由子进程程处理,处理理完后子进程程退出每个子进程只只处理一个连连接预创建模型-子进程程accept主进程预先fork一些些进程各个子进程竞竞争accept,然后后处理数据传传输一个子进程可可以处理一个个连接,也可可以同时处理理多个连接预创建模型––主进程程accept主进程accept,通通过流管道转转发fd到子子进程子进程收到fd后,处理理数据传输,,处理结束后后通知父进程程父进程处理的的事情比较简简单,容易监监控子进程分发模型通讯进程管理理所有连接,,实现海量接接入通讯进程只负负责分发消息息,包括上行行和和下行消消息业务进程不关关心通讯通讯进程和业业务进程之间间通过内存管管道共享数据据Linux下下的epoll技术实现海量的TCP接入实现轻量级的的数据收发和和链路管理目前测试到的的稳定链接数数为50000TCP服务器器可以考虑使使用epoll+logic的分发发模型线程池模型主线程管理所所有通讯过程程可配置预分配配线程池以任务为单位位来分配处理理请求每个线程同时时只执行一个个任务提供稳定性能能的服务存储问题-张张驰之道没有存储操作作的应用是最最快的应用存储问题的关关键在于硬盘盘的随机读写写速度I/O繁忙的的机器,CPU运算一般般很空闲存储问题的解解决之道,就就是要善用CPU和内存存来缓解磁盘盘读写的压力力Cache策策略磁盘内容在内内存中的镜像像就是Cache在Cache中保存访问问频率最高的的磁盘内容当该内容被再再次访问时,,从Cache中取,节节省磁盘读操操作当该Cache被多次更更新后,再同同步到磁盘,,节省磁盘写写操作善用顺顺序读读写磁盘的的顺序序读写写性能能要远远远大大于随随机读读写延迟写写会导导致异异常崩崩溃下下的更更新丢丢失使用另另一设设备的的顺序序日志志记录录历次次更新新可以以在不不影响响效率率的情情况下下保证证数据据一致致存储问问题实实例--数据据库使用内内存池池存放放磁盘盘Cache页页面使用淘淘汰算算法保保证磁磁盘Cache的命命中率率使用顺顺序物物理日日志记记录Cache更新新异常崩崩溃下下使用用物理理日志志和逻逻辑日日志恢恢复数数据一一致载衡问问题--分合合之道道合理界界定功功能类类型合理分分布处处理能能力合理选选择扩扩展方方式终极目目标还还是平平衡功能类类型界界定少更新新、多多读取取可谓谓之下下载型型服务务器多更新新、少少读取取可谓谓之采采集型型服务务器多更新新、多多读取取可谓谓之交交换型型服务务器少更新新、少少读取取可谓谓之无无态型型服务务器处理能能力分分布下载型型服务务器采采用一一对多多的中中心分分发策策略采集型型服务务器采采用多多对一一的中中心汇汇聚策策略交换型型服务务器需需要使使用前前端索索引分分布无态型型服务务器可可用作作中枢枢,任任意分分布视界越越广的的节点点,功功能越越轻扩展方方式选选择集中的的分布布配置置利于于方便便扩展展有效的的重定定向手手段利利于平平滑切切换单纯的的节点点功能能利于于平行行扩展展适当的的无态态节点点引入入利于于理清清架构构同步分分布模模型客户方方在发发起请请求后后进入入阻塞塞,直直到服服务方方处理理请求求后返返回响响应或或者等等待超超时优点是是良好好的封封装性性缺点是是效率率低下下,一一般和和线程程池模模型配配合使使用RPC技术术和NFS是典典型应应用异步分分布模模型底层框框架实实现跨跨平台台的软软件总总线进进行消消息分分发和和寻址址客户方方和服服务方方作为为符合合总线线标准准的对对象挂挂入总总线异异步通通讯优点是是效率率高,,扩展展性好好缺点是是程序序模型型复杂杂,开开放性性稍差差分布示示例-QQGame分布图图可用问问题--缓急急之道道故障是是不可可避免免的高可用用的目目的在在于避避免单单点故故障造造成整整体故故障一般使使用节节点冗冗余提提高系系统可可用性性解决可可用问问题的的关键键在于于把握握投入入和产产出的的平衡衡服务安安全等等级划划分业务安安全性性-用用户在在系统统中能能否正正常使使用某某项业业务功功能系统安安全性性-用用户能能否正正常使使用系系统数据安安全性性-用用户在在系统统中的的数据据能否否保证证不被被破坏坏解决可可用性性问题题业务安安全性性节点点一般般使用用故障障感知知和快快速重重起的的手段段系统安安全性性节点点需要要使用用热备备手段段作服服务无无缝切切换数据安安全性性节点点需要要定期期在线线备份份和离离线备备份的的手段段常用HA模模型热备方方式-不间间断状状态冷备方方式-不间间断服服务N+M方式式-整整体策策略热备模模型双机相相互独独立,,但对对外提提供单单一服服务视视图双机状状态随随时保保持同同步,,互通通有无无FailOver不影响响正在在使用用服务务的用用户冗余级级别最最高的的备份份模型型冷备模模型双机共共享存存储设设备双机状状态不不保持持同步步主机故故障,,备机机接管管服务务服务不不会中中止,,但正正在使使用的的用户户将受受到影影响N+M模型型服务器器群组组概念念N为主主用设设备数数M为备备用设设备数数任何主主用设设备设设备故故障,,即按按一定定次序序启用用备用用设备备允许出出现最最多M次故故障一般用用于无无态服服务器器一般HA策策略系统+数据据安全全性节节点使使用热热备方方式系统安安全性性节点点使用用冷备备方式式业务安安全性性节点点使用用N+M模模型9、静静夜夜四四无无邻邻,,荒荒居居旧旧业业贫贫。。。。1月月-231月月-23Thursday,January5,202310、雨中黄黄叶树,,灯下白白头人。。。20:56:1920:56:1920:561/5/20238:56:19PM11、以我独独沈久,,愧君相相见频。。。1月-2320:56:1920:56Jan-2305-Jan-2312、故人人江海海别,,几度度隔山山川。。。20:56:1920:56:1920:56Thursday,January5,202313、乍见翻翻疑梦,,相悲各各问年。。。1月-231月-2320:56:1920:56:19January5,202314、他乡生白发发,旧国见青青山。。05一月20238:56:19下午20:56:191月-2315、比不了了得就不不比,得得不到的的就不要要。。。一月238:56下午午1月-2320:56January5,202316、行动出成成果,工作作出财富。。。2023/1/520:56:1920:56:1905January202317、做前,能够够环视四周;;做时,你只只能或者最好好沿着以脚为为起点的射线线向前。。8:56:19下午8:56下下午20:56:191月-239、没没有有失失败败,,只只有有暂暂时时停停止止成成功功!!。。1月月-231月月-23Thursday,January5,202310、很多事事情努力力了未必必有结果果,但是是不努力力却什么么改变也也没有。。。20:56:1920:56:1920:561/5/20238:56:19PM11、成成功功就就是是日日复复一一日日那那一一点点点点小小小小努努力力的的积积累累。。。。1月月-2320:56:2020:56Jan-2305-Jan-2312、世间间成事事,不不求其其绝对对圆满满,留留一份份不足足,可可得无无限完完美。。。20:56:2020:56:2020:56Thursday,January5,202313、不知香香积寺,,数里入入云峰。。。1月-231月-2320:56:2020:56:20January5,202314、意意志志坚坚强强的的人人能能把把世世界界放放在在手手中中像像泥泥块块一一样样任任意意揉揉捏捏。。05一一月月20238:56:20下下午午20:56:201月月-2315、楚塞三湘湘接,荆门门九派通。。。。一月238:56下下午1月-2320:56January5,202316、少年十十五二十十时,步步行夺得得胡马骑骑。。2023/1/520:56:2020:56:2005January202317、空山新雨雨后,天气气晚来秋。。。8:56:20下下午8:56下下午20:56:201月-239、杨柳散散和风,,青山澹澹吾虑。。。1月-231月-23Thursday,January5,202310、阅读读一切切好书书如同同和过过去最最杰出出的人人谈话话。20:56:2020:56:2020:561/5/20238:56:20PM11、越是没有本本领的就越加加自命不凡。。1月-232
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农村买房怎样写协议合同
- 外贸合同协议模板
- 生产框架协议合同
- 协议保险合同
- 短期聘用合同简单协议书
- 学校厨房员工合同协议书
- 修建房子协议合同书模板
- 艺人培训协议合同
- 房屋装修翻新合同协议书
- 货物采购合同协议
- 2025-2030中国慢性腰痛治疗行业市场现状供需分析及投资评估规划分析研究报告
- 演出经纪人与文化经济试题
- pcb抄板合同范例
- 药浴疗法的基本原理操作规程及临床应用
- 2025年吉林工业职业技术学院单招职业倾向性测试题库完整
- 生态农业发展与绿色金融的融合路径
- 奶茶店应聘简历范本
- 附着龈重建在口腔种植修复中的应用探索
- 房屋建造流程过程
- 2025年教科新版七年级英语下册月考试卷
- 第二单元“中华传统文化经典研习”说课稿 2024-2025学年统编版高中语文选择性必修上册001
评论
0/150
提交评论