版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
弹性化的容器与微服务架构实践技术创新,变革未来传统游戏后端服务器架构面临的挑战风险集中一台机器集中运行大量的游戏服进程,当机器宅机时,影响的用户面比较广资源抢占游戏服进程之间没有强隔离,会导致不同游戏服之间资源分配不均匀,或者资源相互抢占的问题管理复杂传统的方式清况下,为了简化部署,大多数进程都运行在同一台服务器上面。管理起来非常的复杂,特别是当一台机器上同时存在很多组游戏服时缺乏弹性缺乏弹性,玩家大量涌入时难以快速扩展,在线人数低峰时也难以快速缩减资源以节省成本研运分离开发和运维各自为战,游戏开发人员只管开发游戏,游戏运维不了解游戏内部细节。从而导致游戏上线前无法通力配合做好资源规划和测试,出问题时容易出现互相推淩的清况CASE
STUDY—
案例分享
—PlayStation
Network(PSN)是索尼互动娱乐为
PS
玩家提供的一组网络服务
通过
PSN
玩家之间可以进行在线的文字聊天、视频聊天、网络游戏对战、游戏内容下载等活动。Network全球销量
1.089
亿台软件销量
11.51
亿套*
截至
2019
年
12
月
31
日月活用户
1.03
亿覆盖超过
70
个国家和地区*
2019
年
12
月数据2016
年的
PlayStation
Network为
PS
玩家提供数十种服务在
AWS
上运行着数干台
EC2
实例通过
Chef
进行管理服务越来越多
架构越来越复杂和难以管理新版本部署往往需要超过一天的时间希望提升效率
为用户提供更多更好的服务搭建容器化运行环境的主要挑战ServerGuest
OSBins/LibsBins/LibsApp1App2当容器越来越多……越来越多……容器化的挑战缺乏容器环境搭建和维护的经验缺乏
CI/CD
环境搭建和维护的经验牵涉面广,组织和流程难以匹配集群管理资涌管理容器放置弹性伸缩排程调度自动恢复滚动式部署自动更新需要—个好用的容器编排平台AWS
容器服务介绍管理部署,
调度,弹性伸缩,
容器化应用管理计算环境容器运行时环境镜像存储库容器镜像存储AWSCloud
MapAWSApp
MeshAmazonElasticKubernetes
ServiceAmazonElasticContainer
ServiceAmazonElasticComputeCloudAWSFargateAmazonElasticContainer
Registry服务发现,
服务网格PSN
选择了
Amazon
ECS
作为容器编排管理平台灵活的任务置放策略深度集成
AWS
相关服务全球部署强大的编排引擎自动扩展组CloudWatch
监控指标Schedulingand
orchestrationCluster
managerPlacement
engineAvailabilityZone
1AvailabilityZone
2AvailabilityZone
3AWS
Fargate使用
AWS
标准的容器架构堆栈RegionVPCAmazon
ECRAmazon
ECSECS
ClusterAmazonRDSinstanceAmazon
CloudWatchAmazonRoute
53ElasticLoad
BalancingAWSIdentityandAccessManagementAuto
ScalingAmazon
S3CI/CD
的架构如何搭建呢?Project
Haste
一开始的项目成员只有三人
自己用开源软件搭建和维护完整的
CI/CD
工具链相当困难AWS提供了一个整CI/CD全托管工具链PSN
的
CI/CD
基于
AWS
CodePipeline
的轻量级架构RegionBuildAWSCodeBuildInspectContainerTestContainerRegistryRegister
ImageECSAuto
re-deployDeveloperGitHookKickAWS
CodePipelineDynamoDBLambdaLambdaFeed
Back交付生产AWS
CDKPSN
Project
Haste
的推进过程(约
2
年)开发优化优化服务迁移开发Haste
开发Pipeline
构建容器化改造Pipeline
使用服务构建服务使用10
个月
用服务进行改造迁移(可回切)
优化改进7
个月
服务
容器化和进行迁移2
个月
用
的
的服务从—开始就使用容器化和
CI/CD
程进行开发9
个月Haste
建和和配置、自定义功能的开发PSN
Project
Haste
的成果测试部署时间1
夭 20
分钟从
Git
中提交代码到部署完成生产部署速度提升 2.5
倍包含人工审核与资料准备的时间服务启动分级 秒级不包括
ALB
健康检查的时间CASE
STUDY—
案例分享
—RomancingSaga
Re:univerSeSQUARE
ENIX著名
IP
《浪漫沙加》,时隔
23
年后推出正统续作手游《浪漫沙加
re:universe》,于
2018
年底日本上线,2019年国际服上线。发布后一个月内10,000,000downloads《浪漫沙加》手游面临弹性伸缩的挑战官网/公告游戏服认证服用户数据session/cache认证数据游戏服务器
/
认证服务器官网公告运维工具等服务器的构成和管理全部都是基于容器的
Docker
应用浪漫沙加
Re:univerSe
的整体架构架构亮点一:实现良好的弹性伸缩架构亮点二:故障自愈浪漫沙加
Re:univerSe
架构要点后台服务
100%
容器化上线部署和容量扩充一次问题都没有发生本地的开发环境和线上环境没有差别容器的编排使用
Amazon
ECS自动扩容故障自动恢复部署和回滚99%
的
AWS
资源用
CloudFormation
统一管理上线后运维的误操作一次都没有发生各个环境之间没有差异一个命令就可以得到一个新的开发环境利用
kumogata/kumogata2
进行代码管理Ruby
语言的
CloudFormation
wrapper
工具部署条件可以用代码来设定密钥设定为环境变量,通过
SSM
获得Amazon
CloudWatch错误日志和中间件日志错误监控,状态监控,资源监控,日志监控Datadog中间件日志错误监控,状态监控,资源监控,进程监控,性能监控,日志监控Amazon
S3存放访问记录等。用
Athena
进行分析游戏上线后700
100%containers
(max) availabilityCASE
STUDY:CAPCOM
的容器化架构实践关于全球销售量1.9
亿套的基础架构变迁on-premises(since
2008)privatecloud(since2012)AWS(since
2015)MonsterHunter
Explore2015
年上线下载量超过
900
万次上线后共有
8
次大型的版本更新100
万DAU500
万RPM2000
万QPMhttps:///watch?v=IlB3xfMXn0w&t=1315sMonster
Hunter
Explore
的架构
(2015)CAPCOM
希望为新项目采用更具运营效率的架构降低运营成本减少数据库维护的工作最消除由于单个员工而导致的“单点故障
(SPOF)获得更好的运营能力,从而带来更多玩家新项目的两项关键服务AmazonElasticKubernetesService
(EKS)Kubernetes
是业界最受欢迎的跨平台容器编排工具Amazon
EKS
是高度可用,可扩展且安全的托管式
Kubernetes
服务Amazon
DynamoDB全托管的键值型
NoSQL
数据库,无需复杂的优化和维护工作内置弹性伸缩和自动备份的能力AWS
容器服务介绍
-
Amazon
EKSAmazon
EKS
托管控制面板Amazon
EKS
数据面板(非托管,
托管,
AWSFargate
)AWS
CloudEKS
VPCCustomer
VPCAZ-1AZ-2AZ-3etcdapiUn-ManagedNode
GroupManagedNode
GroupAWS
VPCAWS
Fargate新项目的整体架构与
Amazon
EKS
协同工作的服务ApplicationLoad
Balancer&
aws-alb-ingress-controllerAmazonRoute
53&
external-dnsCertificate
Manager&HTTPScertificate
integrationAWSIdentityandAccessManagement
(IAM)& kube2iamCAPCOM
容器化架构的收益运营难度和成本下降数据库维护的工作量减少消除了由于单个员工而导致的“单点故障,(SPOF)ServerGuest
OSBins/LibsBins/LibsApp1App2降低风险每个游戏服进程和其它服务都是独立的容器,通过容器调度平台分散在不同的机器上,一台机器上可以有游戏服容器,也可以有一些冗余的、通用的服务容器(如聊天、登录、存档、购买等),而不是密集的都是游戏服,服务器宅机对用户的影响降低;当某个功能部件异常或者需要更新时,还可以单独对某个容器进行更新,实现高度的容错和热迁移;资源隔离可独立规划和配置每个容器的资源,做到互不影响;管理简便通过容器编排工具,可轻松管理大量的容器,快速复制和分发,实现秒级开服;高度弹性结合监控工具和容器编排工具,可实现全自动化的容器分发和回收,快速弹性伸缩资源;研运一体结合
CI/CD
工具,实现研发和运维的一体化和自动化,一个版本就是一个容器镜像,开发、测试、打包、部署一气呵成,促成研发与运维紧密协作,极大提升效率,让游戏得以快速迭代;总结:容器化架构的优势如何实现游戏后端服务的容器化通常后端服务的类型:网关服务器(主要承载玩家连接、建立和后端连接)非场景服务器(登录、大厅、聊天、游戏内交易、匹配)场景服
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 野生动物园铣刨料运输协议
- 油气管道渣土清理合同
- 环保摄影棚装修合同样本
- 机场绿化景观设计合同
- 家具城定点配送服务
- 足球场水电安装项目合同
- 酒类直采运输合同模板
- 美发沙龙大门装修合同样本
- 第三单元 角的度量 单元测试-2024-2025学年人教版数学四年级上册
- 二年级下册数学课堂课件-第3单元认识1000以内的数-冀教版(34张)
- 功能性食品配方分析报告
- 微纳加工教学课件
- 中国农业发展现状及未来趋势
- 体育与健康水平二三年级教材分析
- 初一数学趣味校本课
- Python编程实例:实现哈希表数据结构
- 2024年共青团知识竞赛题库及答案共84题
- 2024年上海申能集团有限公司招聘笔试参考题库含答案解析
- 2024年国家电力电网公司招聘笔试参考题库含答案解析
- 祖国好家乡美演讲课件
- 教科版小学科学四上3.4《弹簧测力计》课件
评论
0/150
提交评论