写点什么

腾讯游戏服务亿级用户,300 款在线产品的运维建设 —— 实战篇

  • 2015-08-07
  • 本文字数:2025 字

    阅读完需:约 7 分钟

引言

随着 IAAS、PAAS 的不断演化,传统运维的工作不断被“云”所代替,在“云”时代的运维,服务才是未来、核心竞争力,本篇以实战经验为主,介绍覆盖全部游戏类型,业务数量达 300 款以上的腾讯游戏运维服务如何落地,并向智能运维服务方向迈进。

服务建设的关键转变:站在业务的角度看运维

运维团队从自身出发看问题,往往容易陷入到我需要什么工具,需要学习怎样的开源技术解决我目前的问题,这个在运维初期进行标准化,自动化建设的时候,非常关键。但是到了运维服务阶段,我们需要关注我们所负责的业务(产品)关心的是什么,以业务驱动技术的优化和探索。

接下来以游戏运维工作中最常见的游戏合服、游戏登录、版本发布三个业务场景来分享游戏运维服务建设从那里开始。

游戏合服:随着游戏世界中玩家的自然流失,游戏热度将会逐渐减低,严重的会影响游戏内的玩法和用户体验,通过合服,寻找两个或多个热度较低但是非常匹配的服进行合并,使玩家可以在一个相对比较健康的游戏环境中得到较好的体验增加玩家之间的交互,同时从技术的角度也可降低业务侧的服务器成本。

游戏登录:游戏登录较普通的 WEB 登录差别较大,需要经过客户端升级、文件校验、帐号认证、选区和正式进入游戏等多个步骤。整个登录过程涉及到包括 CDN、版本服务(客户端版本控制)、帐号后台、目录服务(大区管理)、游戏后台 server、游戏客户端和网络环境在内的多个模块,任何一个环节出现异常都可能会导致登录失败。

版本发布:版本是游戏的主线,传统游戏运维,重点关注发布、BUG、故障处理的阶段,往往运维较大的精力也会放在发布期间的效率和质量优化。而从游戏业务本身出发,需要以版本为主线,从版本转测开始,关注版本发布前的版本质量以及版本准备过程中对发布时长的优化,在版本发布环节,注重发布质量,发布策略,发布效果,用户影响时长等多方面完成版本的发布动作,在发布完成后,需持续实时跟踪版本稳定性,从在线的恢复速度反馈运维发布能力。

服务建设痛点挖掘:数据驱动、闭环服务

整个运维服务建设中,一直遵循通过数据驱动,采集各个业务环节的数据,通过数据反馈业务场景问题,并且通过闭环服务使得服务形成自循环优化,借此不断提升游戏运维核心竞争力。结合游戏业务实际场景,如何做到。

游戏合服:

  • 首先需从多业务指标维度中进行筛选合服因子,比如开服时间、封印等级、战力指数等等,如加上服务器,因子指数翻倍,并且需要综合考虑玩家的地域、网络因素;
  • 具备历史追踪,经验复用,规避失败合服决策;
  • 跟踪实施步骤耗时,并且多个合服需求同时处理,通过自动化降低人工操作,规避风险。

游戏合服服务框架:

游戏登录:

  • 登录体验的衡量,由于涉及模块繁多,玩家的客户端环境也复杂多变,每时每刻都会有登录失败的玩家存在,如何不被这些个案迷惑,整体地衡量登录体验是否正常就成为一个非常重要的问题。我们在采集每一个步骤的登录状态及耗时的基础上,成功率和耗时两个指标来评估玩家的登录体验,同时结合登录异常的分布情况(如某段时间在某个纬度中集中出现某类登录异常)得出综合的登录体验健康度分数,当集中的登录异常出现时能够及时发现,而不是被平均的登录成功率指标所掩盖。

  • 登录体验异常的原因定位,服务器故障或网络波动的引起的故障,系统可以直接进行判断,但更多的时候是单用户(没有直接的共性联系)的异常,这时就需要通过多纬度的对比(比如玩家所在省份、运营商、大区甚至跨业务的对比)来进行问题原因的定位。 游戏登录服务框架:

版本发布:

  • 版本质量衡量体系建设,采用维度异常分数衡量法,与现有大部分云平台或电脑管家类健康度衡量方式,即实时采集各维度发生异常为质量影响体现,版本衡量维度分布以及关联(数据为实时采集):
    • 优化分服务体现:
    • 在线恢复时长:

服务建设技术实践:持续集成、复用轮子

服务效果通过数据衡量,接下来更多考虑如何能够利用底层的标准化以及各类自动化工具,为顶层的服务提供支持,特别是利用好 IAAS、PAAS 提供的各类支撑能力。

  • 业务运维团队将业务逻辑导入服务引擎通过此驱动整个服务运作,其中自动化调用蓝鲸标准化场景工具进行实施;
  • 海量数据的处理,数据量级达到数十亿的规模,通过采集数据的标准化,并借助 Strom、Solr(蓝鲸实时计算平台)等实时分析、检索平台,实现秒级的数据采集、分析、入库和检索,分钟级运算;
  • 根据服务效果驱动技术的演进,采纳各类开源技术(下载加速、P2P、负载均衡、反域名劫持、CDN 加速等等)并组合应用;

游戏合服业务案例截图:

游戏登录业务案例截图:

版本发布业务案例截图:

以上仅为腾讯游戏运维服务三个场景下的实践分享,在此抛砖引玉,希望能够跟业界进行更多的讨论和实践,特别是进一步组合更多服务策略迈向“智能”运维服务。


感谢赵锐龙对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。

2015-08-07 08:102498

评论

发布
暂无评论
发现更多内容

Cypress 自动化测试

admin

自动化测试 Cypress 测试 单元测试 UI测试

Java虚拟机之CMS垃圾收集器

经典译文 | 项目经理必读的基本工作法则

LigaAI

项目管理 项目经理

科技监管能源运作?智慧能源从光热发电技术开始描述

一只数据鲸鱼

数据可视化 智慧能源 光热发电

小透明学弟的华为上岸之路

程序员鱼皮

Java c++ Python 大前端 后端

最壕逆天改命:18名Java程序员凭阿里P8笔记,同时斩获一线大厂offer

Java架构师迁哥

Lazada首届技术开放日开麦在即 共享技术创新最佳实践

【云洲智造】直播间下午4:30准时开播!

工业互联网

Python OpenCV Canny 边缘检测知识补充

梦想橡皮擦

Python 7月日更

如何基于磁盘 KV 实现 Bitmap

Kvrocks

redis BitMap storage KV存储引擎

还在用Jenkins?试试Gitlab的CI/CD功能吧,贼带劲!

私域流量系统开发,APP源码搭建

获客I3O6O643Z97

私域流量 抖音霸屏

手把手教你实现Android编译期注解

vivo互联网技术

android 注解 sdk

以1敌10不是梦,Spring Boot企业级真实应用案例

博文视点Broadview

来自网络资源资产管理的灵魂拷问

鲸品堂

网络 资源 运营商

秒懂 Java 的三种代理模式

Unity ML-agents 参数设置解明

行者AI

模块三作业

NewBranSTONE

架构实战营

2021,你还在写“赤裸裸”的API吗?

一例智能网卡(mellanox)的网卡故障分析

安第斯智能云

后端

东京奥运会与网络安全背后的速度博弈!

郑州埃文科技

SpringBoot启动加载监听器以及监听应用启动阶段事件

捡对象的cy

springboot

带你认识MindSpore量子机器学习库MindQuantum

华为云开发者联盟

mindspore 量子机器 MindQuantum 量子机器学习库

EMQ X Cloud 正式支持 Microsoft Azure 平台,助力企业出海业务

EMQ映云科技

azure 云端 云上数据 emq

图解红黑树

Ayue、

数据结构

哔哩哔哩B站视频下载器推荐(简单又好用)

资源君

工具 分享 哔哩哔哩 b站视频下载 教程分享

电脑里的视频被误删了可以用EasyRecovery恢复吗?

淋雨

EasyRecovery 文件恢复 硬盘数据恢复

外包学生管理系统的架构设计

面向对象的猫

看完这篇文章,你也可以手写MyBatis部分源码(JDBC)

财务或类财务系统数值精度设计

路边水果摊

数字 财务 精度 数值

给新手学习MySQL的建议

Simon

MySQL

腾讯游戏服务亿级用户,300 款在线产品的运维建设 —— 实战篇_服务革新_KemHong_InfoQ精选文章