《A3--刘敏文--大型 UE4 高 PCU 游戏后台性能体系.pdf》由会员分享,可在线阅读,更多相关《A3--刘敏文--大型 UE4 高 PCU 游戏后台性能体系.pdf(49页珍藏版)》请在三个皮匠报告上搜索。
1、大型UE4高PCU游戏后台性能体系刘敏文腾讯刘敏文腾讯魔方 后台性能专项负责人腾讯魔方工作室后台性能专项测试负责人主要负责魔方工作室群后台质量保障,保障暗区突围手游国服、暗区突围手游国际版Arena Breakout,暗区突围端游,王牌战士2国服和国际服,洛克王国手游等产品的后台性能、稳定性、容灾,建设后台质量保障方案,平台和工具开发。2011年毕业校招加入腾讯,从事过工具开发,白盒测试分析,项目代码评审,研发经验集沉淀等工作,擅长linux下服务端编程,熟悉腾讯游戏通用分布式海量服务架构。目录C O N T E N T S1.议题背景2.局外性能测试方案3.局内UE4 DS性能测试方案议题背
2、景01开服即炸服?案例1.海量玩家并发2.全区全服架构游戏架构clientCLB接入集群ConnsvrConnsvrConnsvrConnroleteamroleroleroleteamteamteammatchmatchcfentermatchcfentermatchroomroomroomroomroomdscDsaDsaDsadsdsdssvrtype2svrtype1svrtypex1.分层明确2.多服务/多实例3.进程间RPC调用多4.链路长5.有状态/无状态6.DS管理TCPUDPRPC1.各服务各事务性能qps是否满足需求(单场景)2.全链路服务整体性能是否正常(综合场景)3.不
3、删档环境预估pcu真实压测开服模拟(现网百万级全链路压测)4.局内DS(UE4专用服务器)进程性能是否满足需求5.局内DS(UE4专用服务器)单机容量探测,外网部署指导后台性能测什么局外性能测试方案022.1 压测工具2.2 压测平台核心能力2.3 百万级全链路现网压测2.1压测工具-需求可复用通用能力封装和独立,各项目只需专注自身业务逻辑高性能工具本身高可用,具备单核可支撑大量请求的能力,尽可能发挥机器资源。易用开发门槛低,上手简单。统一接口,无隐形规则可拓展对于不同接入层协议的项目,可以无需变更压测工具基本架构,快速接入应用。控制层2.1压测工具-架构逻辑层路由层统计层连接层游戏后台负责外
4、部通信业务逻辑进程间消息中转性能统计和上报2.1压测工具-易用性Robot1RunningSuspend网络事件定时器等待事件等待RobotN优点:1.C+实现,高性能2.单线程多协程,代码开发简单3.同步方式写异步代码4.写单个机器人逻辑,底层进行多机器人调度管理5.统一接口提供,逻辑开发无需关注通信底层SendAndRecvSendAndRecvHttpSendAndRecvTbusppSendAndRecvUdpLogicConnectTgcpapiHttpTbusppUdp连接层可拓展Wait业务填充子公司/外包化压测工具-高性能测试方式TPS相关进程CPU通过Tconnd发送/接收1
5、28字节buf9000099000Tconnd 99%Logic 55%通过Tconnd发送/接收256字节buf8000088000Tconnd 90%Logic 50%通过Tconnd发送/接收512字节buf6900074000Tconnd 95%Logic 48%逻辑层性能,高于业务Tconnd组件Benchmark2.1 压测工具2.2 压测平台核心能力2.3 百万级全链路现网压测2.2压测平台-痛点压测执行结果分析环境部署场景构造需求收集问题定位手工作业压测管线制定压测场景、编写脚本,有较高的专业性和复杂性要求,对部分测试人员来说门槛较高,存在一定的学习成本。门 槛 问 题人 力
6、消 耗从压测环境的部署、脚本构建、测试执行到数据采集,以及后期的测试报告整理,问题分析分析,全流程消耗了大量的人力。成 本压测依赖的软硬件资源的开销,服务器利用率和项目周期强关联,造成一部分资源成本的浪费。需要一套资源服务多个项目。工 业 化人员多、项目大,需求多,版本节奏快,提交次数爆炸。问题暴露晚定位成本极高,需要及时监控性能变化。2.2压测平台-辅助代码生成游戏客户端操作时序生成代码生成1.Hook 收发包接口,请求数据记录2.模板文本填充2.2压测平台-自动部署测试基 于 蓝 盾 的 一 站 式 部 署流水线定时触发服务器环境发布测试参数替换自 动 化 任 务 调 度 与 压 测插件式