本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
亚马逊 GameLift 服务 API 参考 (AmazonSDK)
本主题提供基于任务的 API 操作列表,用于亚马逊托 GameLift 管托管解决方案,包括托管自定义游戏服务器和实时服务器。这些操作被打包到aws.gamelift
命名空间中的Amazon SDK 中。 下载Amazon软件开发工具包
该 API 包括两组用于托管游戏托管的操作:
亚马逊 GameLift 服务 API 还包含与其他亚马逊 GameLift 工具和解决方案一起使用的操作。有关 FleetIQ API 的列表,请参阅 fleetIQ API 操作。有关配对 FlexMatch 的 API 列表,请参阅 FlexMatchAPI 操作。
设置和管理 Amazon GameLift 托管资源
调用这些操作可为您的游戏服务器配置托管资源、扩展容量以满足玩家需求、访问性能和利用率指标等。这些 API 操作用于托管在亚马逊上的游戏服务器 GameLift,包括实时服务器。您可以使用 Amazon GameLift 控制台
为部署游戏服务器做好准备
上传并配置游戏的游戏服务器代码,为部署和在托管资源上启动做准备。
管理自定义游戏服务器版本
-
upload- build — 从本地路径上传 GameLift 构建文件并创建新的亚马逊编译资源。此操作只能作为Amazon CLI命令使用,是上传游戏服务器版本的最常用方法。
-
CreateBuild— 使用存储在 Amazon S3 存储桶中的文件创建新的生成包。
-
ListBuilds— 获取上传到亚马逊 GameLift 地区的所有版本的列表。
-
DescribeBuild— 检索与版本相关的信息。
-
UpdateBuild— 更改编译元数据,包括编译名称和版本。
-
DeleteBuild— 从亚马逊移除版本 GameLift。
管理实时服务器配置脚本
-
CreateScript— 上传 JavaScript 文件并创建新的亚马逊 GameLift 脚本资源。
-
ListScripts— 获取上传到亚马逊 GameLift 地区的所有实时脚本的列表。
-
DescribeScript— 检索与实时脚本相关的信息。
-
UpdateScript— 更改脚本元数据并上传修改后的脚本内容。
-
DeleteScript— 从亚马逊删除实时脚本 GameLift。
设置用于托管的计算资源
配置托管资源并使用游戏服务器版本或实时配置脚本进行部署。
创建和管理舰队
-
CreateFleet— 配置和部署新的Amazon计算资源 GameLift 队组来运行您的游戏服务器。部署后,游戏服务器将按配置自动启动并准备好托管游戏会话。
-
ListFleets— 获取亚马逊 GameLift 地区所有舰队的列表。
-
DeleteFleet— 终止不再运行游戏服务器或托管玩家的舰队。
-
查看/更新舰队位置。
-
CreateFleetLocations— 将远程位置添加到支持多个地点的现有机队中
-
DescribeFleetLocationAttributes— 获取舰队所有远程地点的列表,并查看每个地点的当前状态。
-
DeleteFleetLocations— 从支持多个地点的舰队中移除远程地点。
-
-
查看/更新队组配置。
-
DescribeFleetAttributes/UpdateFleetAttributes— 查看或更改舰队的元数据以及游戏会话保护和资源创建限制的设置。
-
DescribeFleetPortSettings/UpdateFleetPortSettings— 查看或更改队列允许的入站权限(IP 地址和端口设置范围)。
-
DescribeRuntimeConfiguration/UpdateRuntimeConfiguration— 查看或更改要在队列中的每个实例上运行的服务器进程(以及要运行的服务器进程数)。
-
管理机队容量
-
describeEC2InstanceLimits — 检索当前Amazon账户允许的最大实例数和当前使用级别。
-
DescribeFleetCapacity— 检索舰队主区域的当前容量设置。
-
DescribeFleetLocationCapacity— 检索多地点舰队中每个地点的当前容量设置。
-
UpdateFleetCapacity— 手动调整机队的容量设置。
-
设置auto-scaling:
-
PutScalingPolicy— 开启基于目标的auto-scaling 或创建自定义auto-scaling 策略,或更新现有策略。
-
DescribeScalingPolicies— 检索现有的auto-scaling 策略。
-
DeleteScalingPolicy— 删除auto-scaling 策略并阻止它影响队列的容量。
-
StartFleetActions— 重启队列的auto-scaling 策略。
-
StopFleetActions— 暂停舰队的auto-scaling 政策。
-
监控队组活动。
-
DescribeFleetUtilization— 检索有关舰队中当前活跃的服务器进程数、游戏会话数和玩家的统计信息。
-
DescribeFleetLocationUtilization— 检索多地点队列中每个地点的利用率统计信息。
-
DescribeFleetEvents— 查看指定时间段内舰队记录的事件。
-
DescribeGameSessions— 检索游戏会话元数据,包括游戏的运行时间和当前玩家人数。
设置队列以实现最佳游戏会话位置
设置多队组、多区域队列,以使用最佳可用托管资源放置游戏会话,从而实现成本、延迟和恢复能力等方面的优势。
-
CreateGameSessionQueue— 创建队列以在处理游戏会话放置请求时使用。
-
DescribeGameSessionQueues— 检索在亚马逊 GameLift 地区定义的游戏会话队列。
-
UpdateGameSessionQueue— 更改游戏会话队列的配置。
-
DeleteGameSessionQueue— 从该区域移除游戏会话队列。
管理别名
使用别名来表示您的队组,或创建终端替代目标。别名在将游戏活动从一个队组转换到另一个队组时非常有用,例如在游戏服务器生成包更新期间。
-
CreateAlias— 定义新别名并可选择将其分配给舰队。
-
ListAliases— 获取在亚马逊 GameLift 地区定义的所有舰队别名。
-
DescribeAlias— 检索有关现有别名的信息。
-
UpdateAlias— 更改别名的设置,例如将其从一个舰队重定向到另一个舰队。
-
DeleteAlias— 从该区域删除别名。
-
ResolveAlias— 获取指定别名指向的舰队 ID。
访问托管实例
查看有关队组中各个实例的信息,或请求远程访问指定的队组实例以进行故障排除。
-
DescribeInstances— 获取队列中每个实例的信息,包括实例 ID、IP 地址、位置和状态。
-
GetInstanceAccess— 请求远程连接到队列中指定实例所需的访问凭证。
设置 VPC 对等连接
在您的亚马逊 GameLift 托管资源和其他资源之间创建和管理 VPC 对等Amazon连接。
-
CreateVpcPeeringAuthorization— 授权与您的一个 VPC 建立对等连接。
-
DescribeVpcPeeringAuthorizations— 检索有效的对等连接授权。
-
DeleteVpcPeeringAuthorization— 删除对等连接授权。
-
CreateVpcPeeringConnection— 在 Amazon GameLift 队列的 VPC 与您的一个 VPC 之间建立对等连接。
-
DescribeVpcPeeringConnections— 检索有关与 Amazon GameLift 队列的活动或待处理的 VPC 对等连接的信息。
-
DeleteVpcPeeringConnection— 删除与亚马逊 GameLift 队列的 VPC 对等连接。
开始游戏会话并加入玩家
从您的游戏客户端服务调用这些操作以开始新的游戏会话,获取有关现有游戏会话的信息,并让玩家加入游戏会话。这些操作用于托管在亚马逊上的自定义游戏服务器 GameLift。如果您使用的是实时服务器,请使用管理游戏会话实时服务器客户端 API (C#) 参考。
-
为一个或多个玩家启动新游戏会话。
-
StartGameSessionPlacement—要求亚马逊 GameLift 找到最佳的可用托管资源并开始新的游戏会话。这是创建新游戏会话的首选方法。它依靠游戏会话队列来跟踪多个区域的主机可用性,并使用 FleetIQ 算法根据玩家延迟、托管成本、位置等确定放置优先级。
-
DescribeGameSessionPlacement— 获取安置申请的详细信息和状态。
-
StopGameSessionPlacement— 取消安置申请。
-
CreateGameSession— 在特定的舰队位置开始新的空白游戏会话。此操作使您可以更好地控制从何处开始游戏会话,而不是使用 FleetIQ 来评估放置选项。您必须在单独的步骤中将玩家添加到新的游戏会话中。
-
-
让玩家进入现有的游戏会话。查找有可用玩家槽位的正在运行的游戏会话,并将它们留给新玩家。
-
CreatePlayerSession— 预留空位供玩家加入游戏会话。
-
CreatePlayerSessions— 预留空位供多位玩家加入游戏会话。
-
-
处理游戏会话和玩家会话数据。管理有关游戏会话和玩家会话的信息。
-
SearchGameSessions— 根据一组搜索条件请求活跃游戏会话列表。
-
DescribeGameSessions— 检索特定游戏会话的元数据,包括活跃时长和当前玩家人数。
-
DescribeGameSessionDetails— 检索一个或多个游戏会话的元数据,包括游戏会话保护设置。
-
DescribePlayerSessions— 获取有关玩家活动的详细信息,包括状态、游戏时间和玩家数据。
-
UpdateGameSession— 更改游戏会话设置,例如最大玩家人数和加入政策。
-
GetGameSessionLogUrl— 获取游戏会话的保存日志的位置。
-