ARMS 助力假面科技研发运维提效,保障极致游戏体验

news2025/4/8 8:57:59

客户介绍与项目背景

假面科技成立于 2014 年,致力于打造创新的数字产品,火爆一时的“狼人杀”、“谁是卧底”、“足记相机”都是假面科技旗下产品,公司产品总数超过 40 款,覆盖用户数超过 2 亿人。

随着业务的持续发展,运维开发团队除了保持高效的功能迭代的同时,也在不断的夯实其系统稳定性和应急响应能力。假面科技运维团队于 2024 年年中开始同 ARMS 团队接洽,通过多轮的需求对齐和产品测试验证,假面科技决定引入阿里云 ARMS 应用实时监控服务以提升其研发运维效率,并保障用户获得极致的游戏体验。

阿里云 ARMS  应用实时监控服务作为一款一站式应用性能观测平台,包含用户体验监控、应用监控、链路追踪等模块。 观测对象覆盖 Web&H5、小程序、PC、Mobile 等类型终端应用,Java、Golang、Python 等开发语言的分布式、微服务架构服务端应用,满足不同语言、架构、部署环境的应用性能观测需求。基于全栈应用性能数据的统一观测、端到端全链路分析与代码级持续剖析能力,以及智能告警、根因洞察、影响面分析,高效、精准发现与定位异常根因。并全面兼容 OpenTelemetry、Prometheus 等行业开源标准,实现可观测数据统一管理与应用,有效提升应用性能全面洞察与优化。

项目初期面临的挑战与需求

假面科技在业务初期使用开源工具 Jaeger 为部分核心应用构建了一套链路追踪平台。然而,在实际应用中,团队发现平台存在许多功能上的不足,无法满足企业级需求,导致了一系列业务问题难以得到有效解决,从而影响了研发与运维的效率,给假面科技的排障提效带来了不小的挑战与压力。

性能监控功能不足

传统的监控工具普遍存在无法提供多样化和细颗粒度性能数据的问题,这使得技术团队在遇到故障时难以迅速定位问题的根源,并及时采取相应的解决措施。以开源的 Jaeger 为例,尽管它主要服务于分布式链路追踪,但在各类性能指标的监测、代码级剖析和告警功能方面仍显得力不从心。

这样的局面不仅增加了团队的工作量,还使他们在日常运维过程中需要频繁地在多个监控平台之间进行数据交叉验证和排查,包括日志、告警等不同系统的反复切换和确认,极大地降低了工作效率。这些问题的存在,不仅延长了故障恢复的时间,还可能影响到用户体验与业务运营的稳定性。

运维成本高

开源产品在功能设计上,往往并不能保证用户体验的便捷性和易用性。尽管提供了相对完整的工具用于辅助运维管理,但由于缺乏灵活的用户界面和直观的操作流程,致使排查问题的过程耗时久成本高,导致团队在解决问题时面临效率低下的困境。

此外,开源产品的稳定性建设往往需要投入大量的时间和资源,形成了隐性成本。这些成本的存在可能会影响团队的集中精力与创新能力,最终削弱了整体工作效率。

企业级能力不完善

假面科技有多款爆款游戏,且不同的游戏有不同的观测需求。这就需要观测产品满足监控告警功能的同时,还需要满足针对不同游戏设置不同权限、大盘、配置、规则和集成等企业级能力,并且还需要开放、安全、稳定和持续演进的定制化对接的标准能力,如数据加工、OpenAPI 等。

如何落地跨团队协同的 ChatOps 能力

在生产环境中,系统始终处于运行状态,这也意味着团队无法预测何时会出现异常情况,这就要求团队具备随时应对突发事件的能力。因此,如何迅速实施和落地 ChatOps,成为了运维团队亟待解决的重要议题。

在具体实施过程中,运维团队需要将多个功能模块整合到 ChatOps 平台中,包括实时告警通知、系统性能指标查询、日志搜索和分析等。同时,借助 ChatOps 的自动化能力,可以将日常运维操作标准化,例如处理常见故障的流程,快速响应用户请求等。让团队能够将更多精力集中在系统优化和新功能开发上,从而推动业务的持续创新和发展。

从海量可观测数据中挖掘和探索业务价值

可观测数据是业务实际运行状态的直接反映,然而,随着每时每刻都会产生大量的数据,这些海量信息的堆积并不能直接体现出业务的真正价值。为了有效地挖掘数据背后的价值,团队需要明确设定具体的业务场景、业务活动和关键的业务标识。这些要素不仅可以帮助团队梳理出数据之间的关系,更能在复杂的可观测数据海洋中,识别出对业务价值贡献最大的关键链路。

通过这种方式,团队能够更有针对性地进行数据分析,从而推动业务决策的优化和发展。有效的观测及数据利用不仅能够提高运营效率,还能为企业提供必要的战略洞察,助力其在竞争激烈的市场中保持优势。

基于 ARMS 的全链路应用可观测解决方案

针对上述面临的需求和挑战,阿里云 ARMS 团队与假面科技运维团队经过多轮沟通对焦,通力合作共同输出了基于 ARMS 面向假面科技游戏业务场景的全链路应用可观测最佳实践,并成功在“狼人杀”等核心游戏业务中落地,实现了全业务、全场景的监控和告警,全面提升了监控的覆盖率和告警有效率,其中告警平均恢复耗时(MTTR)缩短 50% 以上。

无侵入、开箱即用的产品能力,让假面科技运维团队快速验证测试,最终生产环境全量接入

ARMS 自研的 Java 探针采用字节码增强技术,能够在不干扰业务代码的前提下实现零侵入式安装。通过自动埋点的方式,该探针能够高效采集丰富的性能指标和详细的调用链数据,为开发人员和运维团队提供了强大的数据支持。在假面科技的初期产品测试验证阶段,运维团队同时安装了开源的 Jaeger SDK 和 ARMS Java 探针,这样既能满足链路追踪的基本需求,又能对比分析 ARMS 的产品能力。

在经过一段时间的使用后,假面科技运维团队对 ARMS 的各项优势印象深刻。ARMS 在接入方式的灵活性、产品功能的多样性、系统的稳定性,以及具备极高性价比等多个方面,都显现出其显著的竞争力。最终,运维团队决定全面采用 ARMS 来构建可观测性体系。目前,假面科技的核心游戏业务生产环境已全面接入 ARMS,极大地提升了日常运维的效率和准确性。 通过这一转型,假面科技不仅优化了其运维流程,还为未来的产品迭代和性能优化打下了坚实的基础。ARMS 的强大功能使得团队可以更加专注于业务发展,而无需过多担心底层的性能监控问题,整体运营效率得到了显著提升,业务响应速度和用户体验也得到了明显改善。

面向不同游戏业务的全局场景化大盘,便捷洞察服务运行健康度,错、慢、异常 TopN 一目了然

ARMS 提供了一系列功能强大的全局服务场景化大盘,这些大盘涵盖异常分析、数据库性能分析、请求时延和错误分析以及全链路灰度发布等多种应用场景。假面科技运维团队在这一基础上,借助环境标签和业务标签的方式,将接入 ARMS 的各类应用进行科学合理的分组。这种精细化管理使得团队能够高效构建出针对不同游戏业务的专属可观测大盘,从而实现更精确的监控与分析。

在运维过程中,运维团队定期对出现的错误、请求慢的 TopN 接口,以及新出现的异常和慢 SQL 进行详细的摸排和分析。通过这样的监控和数据分析,团队及时发现瓶颈和问题,并与研发团队紧密合作,制定专项优化方案。这种多方协作的方式极大地提升了服务的性能和稳定性,最终带来了用户体验的显著改善和客户满意度的提升。运维团队的努力不仅增强平台的可用性,也为业务持续增长奠定坚实基础。

代码级性能剖析自适应开启,兼顾性能开销与日常排障效果

ARMS 的持续剖析功能能够深入识别 Java 程序中因 CPU、内存和 IO 等因素引发的性能瓶颈问题。该功能通过方法名称、类名称和行号进行详尽的细分统计,并以火焰图的形式直观展现分析结果,极大地帮助假面科技研发团队迅速定位至方法栈级别的性能瓶颈。这种精确的工具不仅能够提升代码的执行效率,还能为后续的性能调优提供重要依据。

在架构优化工作的推进中,运维团队在测试环境中全面启用这一能力,以确保在优化过程中能够及时发现并解决潜在问题。同时,为了保障生产环境的高效运行并应对可能出现的性能瓶颈,运维团队运用了自定义的 OpenAPI 接口,以潮汐效应的自适应方式灵活启用剖析功能。这种策略让运维团队能够在生产环境中动态监测系统性能,迅速响应并调整,以最小的干扰确保用户体验。

截至目前,ARMS 的性能持续剖析能力在运维团队的架构优化工作中发挥了重要作用,不仅提升应用的稳定性和响应速度,还为后续的优化策略和系统提升提供数据支持。这一切都表明,ARMS 不仅是一个剖析工具,更是推动企业技术进步的重要引擎。

构建 ChatOps 移动运维平台,随时随地查询告警、指标、链路和日志数据

ChatOps 是一种集成了聊天和自动化工具的协作方法和文化,旨在提高团队的协作效率和可见性。ChatOps 的目标是提高工作流程的效率和可见性,并促进团队成员之间的协作和沟通。假面科技的运维团队基于实际业务场景,构建了一套高效的移动运维平台。这一平台不仅服务于研发团队和运维团队,还为指挥决策者提供了实时的信息通道。通过假面 ChatOps 移动运维平台,团队成员可以随时随地获取业务运行的状态信息。如果业务服务遇到异常情况并发出警报,团队可以迅速利用这一平台进行应急处理。

在接到警报后,运维人员能够便捷地进行告警流转,迅速查询与告警对象相关的各种指标、链路和日志数据。这种快速而高效的响应机制有效避免了在特定时间段内,当值班人员无电脑可用时,无法迅速做出应急响应的尴尬局面。通过 ChatOps 平台,团队的协作变得更加灵活和高效,从而提升了整个业务运作的可靠性和响应速度。

后续合作的方向与规划

随着假面游戏业务基于 ARMS 构建可观测体系的推进,假面科技运维团队也在同 ARMS 团队一起探索可观测在游戏场景更多的可能性。

AI 技术的迅猛发展和广泛应用为 AIOps 在可观测领域的落地提供了新的契机。在双方的共同努力下,ARMS 推出针对异常调用链和方法栈火焰图的 Copilot 数据解读、异常检测及解决方案推荐能力。此外,ARMS 还发布新一代智能洞察功能——Problem Insights,旨在利用大模型进行根因定位。这项功能不仅支持实时自巡检与异常告警事件巡检,还提供全面的根因定位、告警收敛及影响面分析能力,极大地提升了运维团队快速解决问题的效率。

与此同时,运维团队也提出了在多种业务场景中需要 ARMS 加强核心业务链路监控能力的需求。基于现有的应用监控和链路追踪能力,他们希望能够引入业务维度来定义和监控核心业务链路,以便更精准地进行告警。这一建议与 ARMS 团队的近期战略规划高度一致,ARMS 计划于 2025 年 3 月重磅推出业务链路分析功能,旨在更好地满足客户的需求,提升整体监控和故障响应能力。通过这一创新功能,ARMS 将助力企业全面掌握核心业务链路的运行健康,进一步推动业务的稳定发展和智能化运维。

业务系统的稳定性和应急响应效率,是品牌口碑和用户体验的基石,阿里云将坚定不移的为客户提供极致“稳定、安全、性能、成本”的产品和方案,助力客户业务再攀高峰。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2303942.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

趣味数学300题1981版-八个等式、五个5等于24

八个等式 分析:此问题的求解思路是按照最后一步运算的运算符号进行分类。示例中最后一步的运算是除法,只要被除数与除数相等且不为0,就可以得到结果1.因此我们还可以对于结果等于1的情况列出其他的算式。如果保持最后一步运算为除法运算&…

关闭超时订单和七天自动确认收货+RabbitMQ规范

关闭超时订单 创建订单之后的一段时间内未完成支付而关闭订单的操作,该功能一般要求每笔订单的超时时间是一致的 TTL(Time To Live)存活时间,只能被设置为某个固定的值,不能更改,否则抛出异常 死信&#…

【多模态处理篇一】【 深度解析DeepSeek图文匹配:CLIP模型迁移实战——从原理到落地的保姆级教程】

引言:当CLIP遇到DeepSeek,会发生什么化学反应? 如果说CLIP是OpenAI为多模态领域投下的"原子弹",那DeepSeek的迁移实战方案就是给这颗原子弹装上了精确制导系统。这个组合能让你用一张猫咪表情包搜到全网同类梗图,还能让电商平台自动生成百万级商品描述,甚至帮…

水果生鲜农产品推荐系统 协同过滤余弦函数推荐水果生鲜农产品 Springboot Vue Element-UI前后端分离 代码+开发文档+视频教程

水果生鲜农产品推荐系统 协同过滤余弦函数推荐水果生鲜农产品 Springboot Vue Element-UI前后端分离 【亮点功能】 1.SpringbootVueElement-UIMysql前后端分离 2.Echarts图表统计数据, 直观展示数据情况 3.发表评论后,用户可以回复评论, 回复的评论可以被再次回复, …

1.vue使用vite构建初始化项目

npm create vuelatest❯ npm create vuelatest> npx > create-vueVue.js - The Progressive JavaScript Framework✔ Project name: … vue3_test ✔ Add TypeScript? … No / Yes ✔ Add JSX Support? … No / Yes ✔ Add Vue Router for Single Page Application dev…

在PyCharm中运行Jupyter Notebook的.ipynb文件及其pycharm软件的基础使用

(注意需使用PyCharm专业版,学生、教师可以申请免费使用:https://www.jetbrains.com/shop/eform/students) 1. pycharm2024版汉化 https://blog.csdn.net/m0_74103046/article/details/144560999 2. pycharm中的python控制台和J…

深度体验通义灵码2.0 AI 程序员

通义灵码2.0 作为一名开发者,我去年就使用过1.0,近期有幸体验了 2.0,这是一款集成了 Deepseek 大模型的智能编码助手。在这次体验中,我深入探索了新功能开发、跨语言编程、单元测试自动生成、图生代码等多个场景,深刻…

Coroutine协程

cooperation 协作 routine 程序,常规 协程核心:函数能够被挂起suspend,当然也能被回复resume 内置函数:also 返回对象本身 扩展: 内置函数let、also、with、run、apply大大提高你的开发效率! 协程的作用:…

使用IDEA提交SpringBoot项目到Gitee上

登录Gitee并新建仓库 创建本地仓库 提交本地代码到本地仓库 提交本地代码到远程仓库

Windows安装MySQL指南

1.下载 下载地址:https://www.mysql.com/downloads/ 下载版本:MySQL Installer for Window 2.安装MySQL 以下只列出需要注意的一些界面,没出现的界面默认继续即可。 1.选择安装类型 提供了多种安装模式,包括默认开发版、仅…

汽车免拆诊断案例 | 2013 款奔驰 S300L 车起步时车身明显抖动

故障现象  一辆2013款奔驰S300L车,搭载272 946发动机,累计行驶里程约为15万km。车主反映,将挡位置于D挡,稍微释放一点制动踏板,车辆蠕动时车身明显抖动,类似气缸失火时的抖动,又类似手动变速器…

从0开始:OpenCV入门教程【图像处理基础】

图像处理基础 一、OpenCV主要功能及模块介绍 1、内置数据结构和输入/输出 OpenCV内置了丰富的与图像处理有关的数据结构,如Image、Point、Rectangle等。core模块实现了各种基本的数据结构。imgcodecs模块提供了图像文件的读写功能,用户使用简单的命令…

Scrum方法论指导下的Deepseek R1医疗AI部署开发

一、引言 1.1 研究背景与意义 在当今数智化时代,软件开发方法论对于项目的成功实施起着举足轻重的作用。Scrum 作为一种广泛应用的敏捷开发方法论,以其迭代式开发、快速反馈和高效协作的特点,在软件开发领域占据了重要地位。自 20 世纪 90 …

个人环境配置--安装记录

根据显卡下载对应的cuda和cudnn 我使用的是docker,首先拉取镜像,我用的是ubuntu20.04 加速:pull hub.1panel.dev/ devel是开发版本 sudo docker pull hub.1panel.dev/nvidia/cuda:11.6.1-devel-ubuntu20.04先测试一下cuda有没有安装好 nvcc -V更新,安装…

win10把c盘docker虚拟硬盘映射迁移到别的磁盘

c盘空间本身就比较小、如果安装了docker服务后,安装的时候没选择其他硬盘,虚拟磁盘也在c盘会占用很大的空间,像我的就三十多个G,把它迁移到其他磁盘一下子节约几十G 1、先输入下面命令查看 docker 状态 wsl -l -v 2、如果没有停止…

开源的 LLM 应用开发平台-Dify 部署和使用

加粗样式 Dify 简介 官网 http://difyai.com/ 生成式 AI 应用创新引擎 开源的 LLM 应用开发平台 Dify 为开发者提供了健全的应用模版和编排框架,你可以基于它们快速构建大型语言模型驱动的生成式 AI 应用,将创意变为现实,也可以随时按需无…

libxls库的编译以及基于Visual studio的配置

最近有一个需求在windows处理xls,所以就需要libxls这个库,调查了一下,基于C的库的解析情况如下: 所以最理想的就是Libxlsd个开源的方案 基于历史整理的 libxls 在 MinGW 下的编译步骤 前提条件 系统:Windows&#…

抗辐照加固CAN FD芯片的商业航天与车规级应用解析

在工业自动化、智能汽车、航空航天及国防装备等关键领域,数据传输的安全性、可靠性与极端环境适应能力是技术升级的核心挑战。国科安芯推出全新一代CANFD(Controller Area Network Flexible Data Rate)芯片,以高安全、高可靠、断电…

Ollama+Deepseek+AnythingLLM搭建本地知识库

OllamaDeepseek的配置可以参考OllamaDeepseekopen-webui搭建本地知识库-CSDN博客 一,AnythingLLM安装 AnythingLLM官网地址AnythingLLM | The all-in-one AI application for everyone 下载 win64 下载完毕后安装。 二,AnythingLLM 配置 新建工作区 …

再探动态规划--背包问题

背包问题常见类型: 动态规划问题核心就两个:状态转移方程和遍历顺序 如果求组合数就是外层for循环遍历物品,内层for遍历背包。如果求排列数就是外层for遍历背包,内层for循环遍历物品。 状态转移方程是动态规划问题中的核心&…