9 腾讯Wetest 服务器性能测试Saas建设及方案实施 王鹏

  • 31 浏览

阿木的花园

2020/11/30 发布于 编程 分类

测试 

文字内容
2. 服务器性能测试SaaS系统构建及服务实施 腾讯WeTest 王鹏
3. 讲师介绍 之前做的是天底下最爽的工作 天!天!打!游!戏! 事实上呢? 腾讯移动游戏测试技术体系标准创立者 参与过腾讯自研和发行游戏总数一半以上的项目 腾讯WeTest 合作创新业务总监 商业化、新技术研究 WeTest核心能力私有化产品、APM线上质量监控产品、兼容适配交付等几块业务
4. 讲师介绍 现在我在搞这些东东 WeTest私有云将WeTest公有云最核心、用户需求最多的六大核心能力私有化,重新设计开发, 力争为每一个合伙伙伴提供一站式的整套测试解决方案,将十多年腾讯测试技术和能力沉淀到平 台,并悉数通过了中国信通院DevOps解决方案(工具类)先进级评审,赋能行业。 测试工作流 以工作流组织测试计划并分配任务,项目进度、人力分配可视化跟踪, 数据详尽,一览无余,自动汇总数据及产生报告。 接口测试 全能的接口调试、测试及管理系统,支持 HTTP/HTTPS,RESTful,gRPC,Dubbo等多种协议测试,并集成接口安全 测试能力 压力测试 具备五百万级并发能力,自研核心引擎,插件式业务架构设计,实时 数据可视化,支持全球范围内分布式节点部署,全行业全链路压力测 试解决方案覆盖 云真机 高清、低延迟的操作体验,详尽的过程性能数据,稳定的双平台云端远程调 试,自研硬件编程控制器及安卓定制机,承建腾讯全集团移动设备集群能力 UI自动化测试 提供跨平台、兼容多框架的测试能力,利用腾讯统一的云设备集群,支持App,H5, 游戏等多种应用,支持IOS/Android/Web,支持录制回放 客户端性能测试 移动全平台iOS/Android性能测试、分析工具平台。快速定位分析性能问题, 无需ROOT/越狱,硬件、游戏及应用APP也无需任何修改,极简化即插即 用。
5. 01 02 03 04 莫道新瓶装老酒,未料老树开新花 纵然武艺十八般,外强中干亦枉然 乱花渐欲迷人眼,浅草才能没马蹄 千淘万漉虽辛苦,吹尽狂沙始到金
6. 01 莫道新瓶装老酒,未料老树开新花 服务器测试技术的变化和挑战
7. 一 点 论 01 围绕几个故事 开始 02 03 讨 哪 , 年 些 器 务 服 伤 何 如 ? 我 过 讨论点二 服务器到底如何测才算666? 雄关 讨论 漫道 点三 ,还 要跳 过哪 些坑 ?
8. 优秀的服务器具备什么特质? 优秀的架构 套 配 的 高 极 缺了谁,都不行 能 性 的 优良
9. 服务器性能测试重点关注点 我们需要关注什么? 高并发处 理能力 快速事务处理能力 超稳定运行能力 能力 储 存 据 可靠数 力 能 错 容 容灾
10. 服务器端测试的一些新趋势 新数据分析方式出现 SaaS性能测试服务 层出不穷的代码级Profiler 越来越多的进程级分析利器 CNCF技术栈大规模应用
11. 服务器端测试的新挑战 开发技术多样化 K8S & Docker的出现 go 各种云服务器
12. 如何应对? 工欲善其事,必先利其器 漫弹键盘无音律,轻挪滑鼠生乾坤
13. 02 纵然武艺十八般,外强中干亦枉然 服务器测试技术的各种招式
14. SaaS性能测试服务和常规工具 天机棒 子母龙凤环 屠龙刀 倚天剑 小李飞刀 劈柴刀
15. SaaS性能测试服务 HPE StormRunner WETEST压测大师 阿里云PTS
16. 性能负载大杀四方 多线程 多进程 分布式 大杀器
17. 层出不穷的代码级Profiler xProfiler,几乎每一种语言都会有对应的一个到 多个独门暗器,甚至现在为每个框架都有自己的 Profiler,比如V8 Profiler, Unity Profiler。
18. 性能分析独门暗器 孔雀翎 唐门暗器 七星透骨 暴雨梨花 冰魄银针 玉蜂针 Valgrind VTune 针 Perf 钉 Gprof OProfiler Google Perftoo ls
19. 越来越多的分析利器 • Vmstat • Valgrid • Vtune • Nmon • … 无一不是杀人越货、居家旅行之利器
20. 性能数据监控采集 玉清昆仑扇 zabbix 判官笔 Prometheus 剥皮小刀 nmon/vmstat/…
21. 为什么要自己搭? 这么多,还不够吗? 你想重复造轮子就直说吧?!
22. 03 乱花渐欲迷人眼,浅草才能没马蹄 于纷纷扰扰中,探寻适合自己团队的方案 厂商
23. 我们要的是什么东西? 需求梳理与归类 支持PB协议 物联网 离线开发 没机器,提供机器 支持游戏 支持移动应用 支持Web站点 支持API接口 适配多种技术栈 百万并发 我要RPC 录制回放 人家有全链路 权限隔离 免费 不写代码 国际化通用 …. …. 视频能做不? 要好用 放弃吧,你做不到的.
24. 需求梳理汇总及大纲 项目管理系统 逻辑开发系统 统一调度系统 压力发生系统 流水线集成系统 数据可视化系统 数据监控系统
25. 压力发生核心子系统 要解决什么核心问题? 多种 业务 通用 技术 栈无 关 百万 以上 并发 能力 低使 用成 本 多地 理位 置压 力 内网/ 公网 皆可 用 够大,够强,够快
26. 统一任务调度子系统 要解决什么核心问题? 任务管理 • 常规任务 • 任务队列 资源管理 • • • • 负载节点 公共资源池 自动化 被测对象 不用太多人力去操心
27. 核心技术能力一 基于云端的分布式压力并发系统 能力点 100%自研压力发生系统保证多机并发, 非开源工具套个壳 支持无限负载机扩展 支持多IDC机房管理调度 多方数据归整合并 兼容Jmeter,fiddler脚本,解析转化 功能示意
28. 逻辑开发子系统 同样,要解决主要的问题? 易用易上手 协作 可视化 全链路构建 能够尽可能简单、快速的用起来
29. 核心技术能力二 多端源码开发、同步、编译及布署 核心问题 多端文件同步如何保证? 编译,编辑与执行分离互不干扰? 恶意代码如何检查? 编译结果如何下发部署? 解决方案 轻量级的文件同步管理方案 单独的编译服务、编辑服务,执行分开 恶意代码存储时检查报警 负载机自动部署agent建立分发节点
30. 核心技术能力三 二进制协议录制回放技术 初始化工程 录制APP 编辑时序 检查代码 发起压力
31. 核心技术能力四 多协议支持及插件式网络协议解析设计 Ø完整支持的协议类型 lHTTP/HTTPS lTDR&TGCP lProto Buff lThrift lWebSocket lRTMP lUDP lWebRtc Apps 、Web Site、Restful API, etc. 主要是腾讯游戏 外部引入游戏及APPs的底层通信 很多游戏及APP会使用该协议 H5游戏、网页游戏、APPs 英雄XX 所有依赖于UDP传输效率的应用场景 主流的视频流应用 Ø开发语言 lC++, 处理网络事件和消息包收发 lLua, 构建业务逻辑 lPython,与平台对接
32. 数据可视化子系统 要解决的问题是什么? 越全越 好的数 据收集 即时数 据报表 离线数 据计算 良好的 可视化 现在,Grafana+Prometheus是最佳组合,没有之一
33. 项目管理及流水线集成子系统 核心点: 1.权限控制 2.项目资源隔离
34. 混沌工程子系统 难点: 1.权限的获取 2.灾难的恢复 3.备份再备份
35. 我们打造的轮子能力总览 压力发生子系统 主流业务 核心能力 游戏 自研核心引擎 APP 录制回放技术 Web站点 全球负载机资源 API 视频流 统一调度子系统 逻辑开发子系统 项目管理子系统 统一编译 统一调控 录制回放 在线IDE 项目隔离 权限分级 节点自动上报 全球多区域 上下文关联 在线调试 用例管理 用例复制 自动分发 自动布署 可视化参数配置 团队协作开发模式 测试记录管理 日志管理 压力无限扩展 任务队列 私有化资源 自动代码生成 智能提示 负载机资源管理 代码管理 低技术耦合 支持云服务厂商 资源共用 复杂逻辑构建 多压力模型 脚本管理 报告共享 日志集中存储 第三方兼容 帮助手册 角色邀请 VUser管理 私有化部署 数据监控子系统 数据可视化子系统 混沌子系统 常规系统指标 虚拟机性能指标 数据即时可视化 千万级数据展示 网络延迟 网络丢包 容器性能指标 数据库系统监控 离线报告下载 定制化报表 网络波动 DNS无效 进程数据监控 可扩展监控插件 异常分类汇总 异常原因分析 带宽流量限制 句柄达上限 问题修复指引 负载机性能数据 域名解析异常 CPU满负荷 响应统计模型 报告共享 磁盘异常 内存无法分配 容器异常 公共服务不可用 流水线集成子系统 CI接口 构建集成 用例创建 用例执行 用例编辑 定时执行 报告获取 详细数据拉取 成熟能力 待建能力
36. 可参考的构架模型
37. 04 千淘万漉虽辛苦,吹尽狂沙始到金 遇到极多的挑战,但最终翻过戈壁与沙漠 厂商
38. 全链路业务逻辑压力构建 上下文关联,参数化配置,逻辑链构建 参数化配置 关联上下文配置
39. 世界范围内的压力源 分布式压力源,支持全国五大区发起压力 检查点结果统计
40. 自建性能监控系统及实时报表 报告页服务器性能监控数据: 整机实时性能数据 单进程实时性能数据
41. 百万级并发能力,T级别的流量仿真 报告页概况数据:
42. HTTP/HTTPS请求详细数据
43. Native TCP事务详细测试数据 报告页TCP数据事务统计数据: 事务实时统计数据 单事务具体数据
44. 不同行业的测试方案落地和实施经验 完整的不同领域产品落地方案和经验
45. 05 未来有啥想法? 新人笑,旧人哭 厂商
46. Monitoring Tencent Common Services Cos Mock Authorize Platfrom Mature solutions TGW Restful APIs Prometheus + exporters Business Data Collectors tRPC Tencent Monitor System tCanplus tRedis Kafka GLBS 压测大师 星海 全网压测 微信压测 Scripts+Command Data Center Visualize chart BigData offline computing Scalable data storage Http/ Https TenLoad Core Access Control Token Bin File Monitor Authority Config File Remote Login Isolating User designable report Task Manage Data extraction Create Alert Logging ELK Schedule Common Logging Stop Test Manage Project Roles Notify Case Data File Node Manage TenLoad Create Script File Deploy Clear Create/Edit/Del/Copy Launch Sequence Restart OpenSource Charts Bugs Experts Team Common Schedule System Dev with Framework C/C++ Python Java Go Independent Robots Pod Records Open Source Tools Compare Reports Tech Accumulations MK & KM Property Template Statistics Advices Global Resource Launch Cluster APIs Env Manage Res Manage STandard Interface Data API Pod JMeter Locust AB WRK Replay K8S Private Cloud Public Cloud IDC IDC TenCloud TenCloud DevCloud DevCloud North American HongKong China Japan Europe 厂商