You work for a small independent PC game maker who is readying for the release of their newest game. It's going to be released as a freemium model where gamers can download and play the first portion of the game for free and then must pay for additional game modules.
The game's base data files are 20GB with the potential of another 50GB if the customers purchase all the game modules. You’ve been asked to architect a method to allow the public to efficiently download the game. The company expects huge demand in the first few days so the solution should be scalable. Additionally, the company wants to distribute the game for the lowest possible AWS cost since capital is extremely tight.
Which is the best idea?
A. Create an EC2 instance with EBS volumes and configure as an FTP server. Build a small application containing an FTP client that customers can download and run.
B. Upload the files to an S3 bucket and grant it public read-only access. Configure Requesters Pays for the S3 bucket and distribute via URL published on the company website.
C. Upload the files to an S3 bucket using the Infrequent Access Storage Class. Configure the bucket to act as a static web-server and distribute via URL published on the company website.
D. Upload the game files to an S3 bucket and grant public read-only access. Build a small application containing a BitTorrent client that customers can download and run.
A
技巧:排除明显错误选项,在没有明显错误的选项中选择最合理的选项。
A. 正确。最合理的选项。本质上这个选项是在云环境中构筑了一个 FTP 服务器,项目只需要支付运行 EC2 实例的费用,以及从该 FTP 实例到 AWS 网络之外的数据传输费用。
B. 不正确。不恰当的选项。本项目是采用免费和收费并行的推广和运营方式,为了能够获得大量的游戏用户,应该采用把游戏程序免费提供给游戏者的方案。采用用户付费的方式,需要用户拥有一个 AWS 账户,虽然能够减少程序分发的成本,但是对用户非常不友好。
C. 不正确。明显错误选项。采用非频繁访问存储层适合访问频率比较低的情景,而本案例中数据需要分发到庞大的用户。采用这种方案,虽然存储费用较低,但是会产生大量的 S3 请求费用,导致总体成本较高。
D. 不正确。 BitTorrent 通过下载对象的客户端本身作为分发器,因此可以在大规模分发内容时节省成本,但是Amazon 以及停止了 BitTorrent 客户端访问 S3 存储桶。