亚马逊Web服务最近公布了亚马逊AppStream的通用版本,这项服务可以让开发者构建复杂的应用。哪些应用能够从AppStream开发中获益?对于AppStream开发是否还有别的建议?
亚马逊AppStream类似AWS Elastic Beanstalk。但是Web应用不是目标市场,AppStream的目标市场是桌面应用,尤其是游戏。
AppStream旨在让你构建基于Windows的游戏,这些游戏使用高性能的图形库(比如DirectX和OpenGL),都要求快速的图形处理单元(GPU)、高内存或者其他高度资源密集的处理。AppStream旨在让你编写一个代码基,就可以让应用运行在Mac、Windows或者移动设备上。
随着移动游戏的不断增长,开发者面临的最大问题之一就是尝试覆盖到市场上的每一种可能的设备。虽然这些设备共享不同的屏幕大小、操作系统以及硬件规格,但是拥有相当同意的用户体验需求。
移动游戏的另一个大问题在于如何能够让游戏的大量计算或者图形显示逻辑适应设备,而且至少需要512MB随机访问内存(RAM)。同时,开发者希望完全利用设备,这就需要十倍的RAM(比如高端平板电脑)。AppStream将图形和计算工作负载卸载到云端,你可以构建你的应用,然后在终端用户的设备上进行渲染。
如果你的应用并不如Web应用做得好,你应该只使用AppStream,比如:
跨平台(包括移动)游戏
多人游戏
图形密集游戏(比如图形设计程序)
你希望使用Windows库构建的其他跨平台应用
你不应该使用AppStream,如果:
一个简单的Web应用就能工作
你需要支持离线模式
你不想在应用中使用基于Windows的库
你的应用不需要密集图形或者CPU或者网络利用
AppStream的主要缺点:需要完全的连接。不幸的是,蜂窝网络并不提供完全的融合,而且如果用户离开这个范围,就不能使用这个应用。AppStream适合永远在线的额设备。也会不管你做什么都是用数据,因此用户必须有一个更高级的数据计划,才能充分利用它。折中的做法就是开发者要确保其用户得到最佳体验,不管用户在什么设备上。
AppStream可能并不适合每一个人,但是可以肯定的是适用于游戏领域。如果你正在构建下一个伟大的游戏,可以看看AppStream是否能够帮助你获得更多的受众,扩展你的平台支持。