我正在创建一个 iPhone 应用程序,它将连接到网络服务器以进行登录和观看视频。
以下是使用该应用程序向其他用户发送视频的工作流程:
iPhone 应用程序将连接到一个 ec2 实例(可以根据流量启动和销毁多个实例),其中 php 脚本将获取有关视频的信息(视频发送者、视频接收者、分配视频唯一 ID 等)并将此信息存储在亚马逊 RDS 实例。然后,实际视频将存储在 amazon s3 中,其唯一 ID 与存储在 RDS 中的唯一 ID 相同。
这是解决这个问题的好方法还是其他方法会更好?
最佳答案
如果我理解您的应用程序将上传和流式传输视频。
我会从 3 层开始:Web、应用程序和数据库。在Web和应用层,一个ELB和其后面的1+N个实例使用Auto Scaling。在数据库层,RDS 很好,但根据负载,我会迁移到某种风格的 NoSql(DynamoDB、MongoDB 等)。为了提供内容,我肯定会使用 CloudFront 作为 CDN,以提供更好的视频流用户体验。
无论如何,我建议您首先查看一下 AWS 引用图 ( http://aws.amazon.com/architecture/ ),更具体地说是 Web 应用程序托管以及内容和媒体服务图。
希望这有帮助。
关于iphone - iPhone 应用程序与亚马逊 Web 服务后端的架构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18771659/