《泛娱乐行业技术服务白皮书》——三、泛娱乐典型业务架构与场景——3.2 游戏类泛娱乐——3.2.2 游戏泛娱乐技术服务(4)

简介: 《泛娱乐行业技术服务白皮书》——三、泛娱乐典型业务架构与场景——3.2 游戏类泛娱乐——3.2.2 游戏泛娱乐技术服务(4)

《泛娱乐行业技术服务白皮书》——三、泛娱乐典型业务架构与场景——3.2   游戏类泛娱乐——3.2.2 游戏泛娱乐技术服务(3) https://developer.aliyun.com/article/1230994?groupCode=supportservice



3.2.2.2.5 重保措施列表


•全链路压测


游戏压测计划和业务场景强关联,需要结合业务目标设计,一般通过客户编写全 链路压测机器人或脚本,模拟真实的用户行为(如游戏对战、聊天)。通过机器人压测 评估单服PCU承载能力。建议客户有专门的QA来负责压测与压测机器人的构建、部 署。针对平台服务或web服务接口,可结合阿里云PTS服务快速高效地在线上构造出 真实的超大规模的访问流量。全链路压测是发现系统瓶颈和验证系统能力的最有效方法。


•常见的游戏场景压测关注点举例:


•网关服务器负责所有网络数据包的转发,通常是网络负载较集中的点,压测需 关注网络吞吐能力。

•场景服务器包含游戏逻辑,压测需关注CPU处理能力以及一定的网络吞吐能 力。

•数据中心服务器负责缓存玩家数据并异步入库,保障玩家客户快速获取和写入 数据,对于可用性要求较高,需要配合应用层实现数据容错机制;

•日志服务器承载了大区所有业务行为的日志收集及处理的压力,压测需关注磁 盘写入性能。通常采用多台分组方式实现。

•全链路压测实施流程样例。

 


全链路压测实施流程

说明

责人

 

 

确认压测目标

1、摸底业务吞吐极限,验证架构,探测 能瓶颈,确定目标压测值

2、梳理压测链路

3、其他

客户和阿里云

梳理压测链路 架构

清楚各个应用从端到端的请求链路、技术架构、 结构模块划分,分析潜在的瓶颈点,并针对性   增加监控指标、制定应急预案

客户和阿里云

梳理业务模

实际的业务场景,确认各个接口范围,接口饿的 测目标,接口出入参数 。

客户

测机器人 或脚本

实际的业务场景编写压测机器人或脚本和 测模型

客户

压测checklist

1搭建和生产环境一致的测试环境

2、根据梳理的各个业务接口相关的参数,配PTS 场景。根据业务目标,设定机器人压测数量。

3、测试压测跑通业务链路。

客户

 

 

 

 

记录问题

1、压测场景目标是否都达到,是否需要单链路补压 满足流量要求

2、大盘是否有毛刺和异常下跌情况

3、上下游流量是否对齐,是否在相同的时间段到达 流量峰值

4、业务成功率是否满足预期

5、是否有触发限流,是否属于正常限流场景。

6、是否有系统问题,集群fgcload偏高,rt偏高

7、是否有数据库热点,数据库异常,rt偏高,连接 池满问

8、是否有缓存击穿,缓存满足率底问题

9、是否触发异常监控保

10、其他

 

 

客户和阿里云

根据压测过程做梳理和调整

客户和阿里云

 

根据压测过程中出现的核心问题理顺并做优化改进

 

 

•风险评估


架构评估:主要从健壮性、安全性、聚合度方面对系统业务架构进行评估,一般 需要从玩家注册登陆,使用游戏内各项功能的整个过程进行全链路评估,主要基于系 统架构图和数据流转图,其评估结果用于反向驱动研发、产品侧的架构优化改进。


技术评估:主要关注线上系统的性能、容量、可用性、安全性等方面,其核心是 保障线上系统中各节点可以满足产品设计指标及业务需求指标,因此需要基于业务目 标,结合用户系统模块阈值、云产品上线等,最终使用性能压测方法来进行验证评估


•常见风险以上文架构图示例中的分区分服架构图为例:


全局服:端到端全链路性能瓶颈。全局服一般走典型的网站架构: LB+ECS+Redis+RDS,这里需要考虑的相关因素包括LB的并发连接数和新建连接数 要求,LB的DDos防护能力要求,ECS规格匹配度,Redis/RDS的连接数、QPS、是 否有数据倾斜、是否有大key、大value情况


游戏服:要考虑ECS的CPU处理能力、磁盘的读写带宽、单服的带宽上限等因 素。同时,一般采用带宽包来提升带宽峰值,这里需要考虑带宽包可容纳的EIP数 量、单UID下可创建的EIP/带宽包数量等指标。


CDN:游戏CDN一般包含游戏各渠道的游戏首包、更新包,serverlist文件、其 他静态文件。由于现在游戏包体越来越大,一般手游都在3、4G左右,因此在游戏 OB前一般会先开放预下载,同时也会配合运营活动宣传。因此对于预下载的CDN带 宽评估非常重要。CDN产品团队会根据客户评估的CDN峰值带宽做资源预留、避免 CDN资源不足导致的卡顿和下载失败。


安全:一般指DDos安全防护,这里要考虑的因素包括业务带宽、防护带宽、端 口数量等。


此外,大型项目往往会存在产品阈值超额的风险,需要提前结合业务目标做各云 产品的梳理。

 

•风险评估checklist样例


image.png


《泛娱乐行业技术服务白皮书》——三、泛娱乐典型业务架构与场景——3.2   游戏类泛娱乐——3.2.2 游戏泛娱乐技术服务(5) https://developer.aliyun.com/article/1230989?groupCode=supportservice


相关文章
|
3天前
|
运维 Oracle 容灾
Oracle dataguard 容灾技术实战(笔记),教你一种更清晰的Linux运维架构
Oracle dataguard 容灾技术实战(笔记),教你一种更清晰的Linux运维架构
|
5天前
|
SpringCloudAlibaba Dubbo 应用服务中间件
【微服务】微服务初步认识 - 微服务技术如何学习 · 认识微服务架构
【微服务】微服务初步认识 - 微服务技术如何学习 · 认识微服务架构
14 0
|
5天前
|
存储 设计模式 架构师
编码之道:从技术细节到系统架构的升华
【5月更文挑战第9天】 在编程的世界里,每一行代码都承载着功能与美学的双重使命。本文将探讨如何从关注技术细节出发,逐步深化对系统架构的理解,并在实践中实现从代码编写者到系统设计师的转变。通过分析具体案例,我们将揭示那些看似平凡的技术感悟如何在复杂系统的构建中发挥关键作用,以及这一过程中对软件开发者的启示。
21 3
|
5天前
|
JSON JavaScript 前端开发
KOI 后台新的架构下,webshop如何消费后台服务 - websocket 初始化
KOI 后台新的架构下,webshop如何消费后台服务 - websocket 初始化
6 0
|
5天前
|
负载均衡 持续交付 API
构建高效微服务架构的五大关键技术
【5月更文挑战第13天】在当前软件开发领域,微服务架构已经成为一种流行趋势。本文将探讨构建高效微服务架构的五大关键技术,包括容器化部署、服务发现与注册、API网关、负载均衡以及持续集成与持续部署。这些技术可以帮助开发团队更快速、更可靠地构建和部署微服务应用,提高系统的可扩展性和可维护性。
|
5天前
|
Kubernetes Cloud Native 持续交付
探索云原生架构的未来:如何优化资源管理和服务部署
【5月更文挑战第6天】 随着云计算的快速发展,云原生技术已成为企业数字化转型的关键驱动力。此篇文章深入探讨了云原生架构的核心组件及其在资源管理和服务部署方面的优化策略。通过分析容器化、微服务及自动化管理的实践案例,本文旨在为读者提供一套系统的方法论,以利用云原生技术实现更高效、灵活且可靠的IT基础设施。
30 2
|
5天前
|
负载均衡 API 数据库
构建高效微服务架构的五大关键技术
【5月更文挑战第4天】 随着云计算和容器化技术的成熟,微服务架构已成为软件开发的主流模式。本文将详细探讨实现高效微服务架构的五个关键技术点:服务拆分策略、API网关设计、服务发现与注册、熔断机制以及分布式事务管理。这些技术点是确保微服务系统可扩展性、灵活性及稳定性的基石,对于后端开发者而言,掌握它们至关重要。文章将提供具体的实施建议和最佳实践,帮助读者构建和维护高性能的微服务系统。
|
5天前
|
负载均衡 Java API
构建高效微服务架构:API网关与服务熔断策略
【5月更文挑战第2天】 在微服务架构中,确保系统的高可用性与灵活性是至关重要的。本文将深入探讨如何通过实施有效的API网关和设计合理的服务熔断机制来提升分布式系统的鲁棒性。我们将分析API网关的核心职责,包括请求路由、负载均衡、认证授权以及限流控制,并讨论如何利用熔断器模式防止故障传播,维护系统的整体稳定性。文章还将介绍一些实用的技术和工具,如Netflix Zuul、Spring Cloud Gateway以及Hystrix,以帮助开发者构建一个可靠且高效的微服务环境。
|
5天前
|
设计模式 Cloud Native 算法
拥抱变化:我的技术适应之旅构建未来:云原生架构在企业数字化转型中的关键角色
【4月更文挑战第30天】 在技术的浪潮中,我学会了不仅仅是编码,还有如何与时俱进。本文记录了我从一名初出茅庐的开发者成长为一个能够适应不断变化技术环境的工程师的心路历程。从最初的困惑与挑战到后来的接纳与创新,我意识到,技术能力的提升和心态的转变同样重要。
|
5天前
|
前端开发 JavaScript 安全
【TypeScript技术专栏】TypeScript在微前端架构中的应用
【4月更文挑战第30天】微前端架构通过拆分应用提升开发效率和降低维护成本,TypeScript作为静态类型语言,以其类型安全、代码智能提示和重构支持强化这一架构。在实践中,TypeScript定义公共接口确保跨微前端通信一致性,用于编写微前端以保证代码质量,且能无缝集成到构建流程中。在微前端架构中,TypeScript是保障正确性和可维护性的有力工具。