本指南演示了使用 Amazon Interactive Video Service(Amazon IVS)以低延迟交付视频和数据流的博彩和游戏设置。作为在线体育博彩或赌场内容提供商,您需要以尽可能低的延迟向全球客户提供直播工作负载。本指南提供了多种延迟优化配置,可以连接从工作室到消费者的所有必要组件,从而实现低延迟交付。
请注意:[免责声明]
架构图

-
延迟小于 300 毫秒
-
低于 2 秒的延迟
-
2–5 秒延迟
-
3–5 秒延迟
-
延迟小于 300 毫秒
-
此架构图显示了如何使用 Amazon Interactive Video Service(Amazon IVS)构建博彩和游戏架构,以低于 300 毫秒的延迟交付视频和数据流。
第 1 步
直播视频是从集成了 Amazon Interactive Video Service(Amazon IVS)实时直播广播 SDK 的移动或桌面源设备上捕获的。然后对其进行编码,并作为输入发送到 Amazon IVS 暂存。编码器设备或 OBS Studio 这样的应用程序也可以发送视频。第 2 步
Amazon IVS 通过 TLS/SSL 连接上的实时消息传输协议(RTMP)(RTMPS)、WebRTC-HTTP 摄取协议(WHIP)或 WebRTC 接收编码后的视频。
第 3 步
游戏元数据将发送到 REST API 层以进行额外的存储和处理,并发送给玩家。AWS Direct Connect 使用专用连接在您的本地工作室和 AWS 之间进行安全的低延迟数据(REST 或 WebSocket)传输。第 4 步
Amazon Elastic Kubernetes Service(Amazon EKS)处理 REST API 和 WebSocket 以获取游戏元数据、大厅或聊天以及 API 功能。它可以处理玩家的 API 调用并维护与玩家的 WebSocket 连接,以获取庄家模块消息。第 5 步
网络负载均衡器为延迟敏感型应用程序提供超低延迟,处理玩家与应用程序之间的 API 通信。定时元数据将发送到 Amazon IVS 端点。第 6 步
在视频流传输期间,Amazon CloudFront 充当入站数据流和客户 API 请求的端点。第 7 步
AWS WAF 保护端点和 API 免受分布式拒绝服务(DDoS)攻击。第 8 步
玩家保持与后端 API 的 WebSocket 连接,用于大厅、聊天和游戏操作调用。
第 9 步
客户端设备上的 Amazon IVS 播放器会接收视频流和元数据。视频和元数据通过 WebRTC 发送到运行Amazon IVS 广播 SDK 的客户端应用程序。您的观众可以通过 Amazon IVS 内容分发网络在全球观看直播。Amazon IVS 广播 SDK 可优化性能,减少对您应用程序和用户设备的影响。
-
低于 2 秒的延迟
-
此架构图显示了如何使用 Amazon IVS 构建博彩和游戏架构,以低于 2 秒的延迟交付视频和数据流。
第 1 步
Direct Connect 使用专用连接在您的本地工作室和 AWS 间进行安全、低延迟的数据(REST 或 WebSocket)和视频(RTMPS 或 SRT)传输。
第 2 步
基于 Amazon Elastic Compute Cloud(Amazon EC2)的应用程序,例如 Nginx 和 Ffmpeg,可以处理视频并将其转码为自适应比特率流媒体:支持 HLS、LL-HLS、CMAF 和 DASH 协议。选择 Amazon EC2 而非容器是为了减少网络对视频延迟的任何潜在影响。1第 3 步
Amazon EKS 处理游戏适用于元数据、大厅或聊天以及 API 功能的 REST API 和 WebSocket。它处理玩家的 API 调用并维护与玩家的 WebSocket 连接,以获取庄家模块消息。
第 4 步
网络负载均衡器为延迟敏感型应用程序提供超低延迟,并为 API 元数据服务分配流量,以实现扩展并将流量路由到运行状况良好的端点。
第 5 步
CloudFront 发行版使用基于 HTTP 的协议,如 HLS、LL-HLS、DASH 和 CMAF,以低延迟、高传输速度向观众交付直播流。在视频流传输期间,它还可以充当客户 API 请求的端点。
第 6 步
AWS Global Accelerator 向消费者分发 LL-HLS、DASH、最大分段大小(MSS)、WebRTC 或 CMAF 视频流量。22 使用 AWS Global Accelerator 改善实时通信(RTC)客户体验
第 7 步
消费者通过公共端点接收数据和视频流,并使用视频时间戳执行同步。
第 8 步
AWS WAF 保护端点和 API 免受 DDoS 攻击。
第 9 步
玩家保持与后端 API 的 WebSocket 连接,用于大厅、聊天和游戏操作调用。
-
2–5 秒延迟
-
此架构图显示了如何使用 Amazon IVS 构建博彩和游戏架构,以 2–5 秒的延迟交付视频和数据流。
第 1 步
直播视频是从集成了 Amazon IVS 广播 SDK 的移动或桌面源设备上捕获的。然后对其进行编码,并作为输入发送到 Amazon IVS 视频摄取服务器。编码器设备或 OBS Studio 这样的应用程序也可以发送视频。
第 2 步
Amazon IVS 处理视频处理(摄取和转码),并将元数据与音频和视频帧同步。因此,所有观众都可以同时获得与直播相关的元数据。
第 3 步
Amazon IVS HTTP 直播(HLS)回放通过 HLS 协议将直播和元数据传输到客户端设备上的 Amazon IVS 播放器。
第 4 步
Direct Connect 使用专用连接在您的本地工作室和 AWS 之间进行安全的低延迟数据(REST 或 WebSocket)传输。
第 5 步
Amazon EKS 处理游戏适用于元数据、大厅或聊天以及 API 功能的 REST API 和 WebSocket。它可以处理玩家的 API 调用并维护与玩家的 WebSocket 连接,以获取庄家模块消息。
第 6 步
网络负载均衡器为延迟敏感型应用程序提供超低延迟,处理玩家与应用程序之间的 API 通信。定时元数据将发送到 Amazon IVS 端点。
第 7 步
在视频流传输期间,CloudFront 充当入站数据流和客户 API 请求的端点。
第 8 步
AWS WAF 保护端点和 API 免受 DDoS 攻击。
第 9 步
玩家保持与后端 API 的 WebSocket 连接,用于大厅、聊天和游戏操作调用。
第 10 步
客户端设备上的 Amazon IVS 播放器会接收视频流和元数据。您的观众可以通过 Amazon IVS 内容分发网络在全球观看直播。Amazon IVS 广播 SDK 可优化性能,减少对您应用程序和用户设备的影响。
-
3–5 秒延迟
-
此架构图显示了如何使用 Amazon IVS 构建博彩和游戏架构,以 3–5 秒的延迟交付视频和数据流。
第 1 步
实时视频是从移动或桌面源设备捕获的,经过编码,然后作为输入发送到 AWS Elemental MediaLive。第 2 步
Direct Connect 使用专用连接在您的本地工作室和 AWS 间进行安全、低延迟的数据(REST 或 WebSocket)和视频(RTMPS 或安全可靠的传输(SRT))传输。
第 3 步
视频通过提供的端点摄取到 MediaLive,支持以下协议:URL_PULL、RTMP_PUSH、RTMP_PULL 和 RTP_PUSH。
第 4 步
AWS Elemental MediaPackage 会摄取 MediaLive 自适应比特率输出并将直播流打包为 HLS、基于 HTTP 的动态自适应流(DASH)和公用媒体应用格式(CMAF)协议。然后将它们交付到三个 MediaPackage 自定义端点。1第 5 步
Amazon EKS 处理游戏元数据、大厅或聊天以及 API 功能的 REST API 和 WebSocket。它可以处理玩家的 API 调用并维护与玩家的 WebSocket 连接,以获取庄家模块消息。
第 6 步
网络负载均衡器为延迟敏感型应用程序提供超低延迟,并为 API 元数据服务分配流量,以实现扩展并将流量路由到运行状况良好的端点。
第 7 步
在视频流传输期间,CloudFront 充当入站数据流和客户 API 请求的端点。CloudFront 发行版使用 MediaPackage 自定义端点作为其来源,并使用基于 HTTP 的协议(例如 HLS、低延迟 HLS(LL-HLS)、DASH 和 CMAF)将您的直播交付给观众。
第 8 步
AWS WAF 保护端点和 API 免受 DDoS 攻击。
第 9 步
玩家保持与后端 API 的 WebSocket 连接,用于大厅、聊天和游戏操作调用。
开始使用

Well-Architected 支柱

当您在云中构建系统时,AWS Well-Architected Framework 可以帮助您了解所做决策的利弊。框架的六大支柱使您能够学习设计和操作可靠、安全、高效、经济高效且可持续的系统的架构最佳实践。使用 AWS 管理控制台中免费提供的 AWS Well-Architected Tool,您可以通过回答每个支柱的一组问题,根据这些最佳实践来检查您的工作负载。
上面的架构图是按照 Well-Architected 最佳实践创建的解决方案示例。要做到完全的良好架构,您应该遵循尽可能多的 Well-Architected 最佳实践。
-
卓越运营
Amazon CloudWatch 可监控视频流基础设施的性能和运行状况,从而主动识别性能瓶颈和其他生产问题。CloudFront 作为内容交付网络,可提高向最终用户交付内容的可靠性和速度。而 Direct Connect 可提供专用网络连接,增强本地和 AWS 环境之间数据传输的稳定性和可预测性。此外,本指南使用 MediaLive、MediaPackage 和 Amazon IVS 进行视频处理和直播。这些托管服务共同实现了高效监控、可靠的内容交付、低延迟网络连接和可重复的部署模型。
-
安全性
本指南使用提供安全端点、默认加密和最低权限访问策略的托管服务来保护数据和视频直播。例如,CloudFront 为传输中数据提供 DDoS 保护和 SSL/TLS 加密。Amazon IVS 不存储数据,但会使用服务器端加密,对通过 HTTPS API 端点传输的传输中数据进行加密。Global Accelerator 还提供流量加密和访问控制,并可与 AWS Shield Standard 集成。此外,Direct Connect 可通过在您的本地基础设施和 AWS 之间建立专用私有网络连接来增强数据传输的安全性。AWS WAF 允许您定义基于意外访问的筛选标准。最后,AWS Identity and Access Management(IAM)策略可以将范围限定在所需的最低权限以内,从而禁止对资源进行未经授权的访问。
-
可靠性
本指南使用的服务可提供强大、可扩展且可管理的容错架构。例如,即使一个 AWS 区域遇到问题,CloudFront 全球网络也能保持内容的可用性。网络负载均衡器通过在多个目标间分配流量和提高容错力来改善应用程序的可用性。此外,MediaLive、MediaPackage 和 Amazon IVS 可以配合使用,提供可靠的视频处理、打包和交付,并且内置冗余功能,能够应对潜在故障。最后,Amazon EKS 支持轻松扩展后端服务,以满足不同需求,从而增强系统的整体可靠性。这些服务共同打造了一个高可用性的弹性基础架构,能够应对实时视频直播和投注操作的高流量需求。
-
性能效率
本指南使用旨在满足低延迟视频直播和实时投注应用程序需求的服务。例如,Direct Connect 可确保本地系统与 AWS 间的连接稳定快速,这对于实时视频摄取至关重要。作为全球内容分发网络,CloudFront 可以最大限度地减少向全球用户交付的延迟。此外,MediaLive、MediaPackage 和 Amazon IVS 可提供优化的视频处理和交付管道,在保持高质量流的同时缩短编码和打包时间。Global Accelerator 通过智能地将用户流量路由到最近的接入点,进一步提升了性能。这些服务共同协作,无论用户身在何处,都能为其提供流畅的低延迟视频流和响应式投注体验。
-
成本优化
本指南使用灵活的可扩展服务,确保成本与实际使用情况一致。例如,CloudFront 和 Global Accelerator 为内容交付提供即用即付定价模式,而 MediaLive 和 MediaPackage 使用按需模式进行视频处理和打包。同样,Amazon IVS 对视频直播使用按分钟计费的定价模式。此外,Amazon EKS 通过容器化实现高效资源利用,与传统服务器部署相比,可能会降低计算成本。最后,CloudFront 全球网络无需维护多个内容分发点,从而降低了基础设施成本。而且,由于所有这些服务都可以根据需求自动扩展,因此您可以在流量变化时优化成本。
-
可持续性
本指南使用 CloudFront、MediaLive、MediaPackage 和 Amazon IVS 等托管服务,这些服务可根据需求自动扩展,从而最大限度地减少不必要的资源消耗。此外,这些服务提供自主管理的数据面板,无需单独的接入点即可促进高质量图像的低延迟交付,从而减少您的碳足迹。
免责声明
示例代码;软件库;命令行工具;概念验证;模板;或其他相关技术(包括由我方人员提供的任何前述项)作为 AWS 内容按照《AWS 客户协议》或您与 AWS 之间的相关书面协议(以适用者为准)向您提供。您不应将这些 AWS 内容用在您的生产账户中,或用于生产或其他关键数据。您负责根据特定质量控制规程和标准测试、保护和优化 AWS 内容,例如示例代码,以使其适合生产级应用。部署 AWS 内容可能会因创建或使用 AWS 可收费资源(例如,运行 Amazon EC2 实例或使用 Amazon S3 存储)而产生 AWS 费用。
本指南中提及第三方服务或组织并不意味着 Amazon 或 AWS 与第三方之间存在认可、赞助或从属关系。AWS 的指南是一个技术起点,您可以在部署架构时自定义与第三方服务的集成。