Amazon Web Services recently announced the general availability of Amazon AppStream, which -- as you probably know...
-- is a service that allows developers to build sophisticated applications that users can stream from the cloud. What are some of the apps that would best benefit from development in AppStream? What other tips do you have for developing apps in AppStream?
Amazon AppStream is similar to AWS Elastic Beanstalk. But rather than targeting Web applications, AppStream targets desktop applications, especially games.
AppStream is designed to let you write one code base and have your application run on Mac, Windows or mobile devices.
AppStream is designed to let you build Windows-based games that use high-powered graphics libraries (such as DirectX and OpenGL) that require fast graphics processing units (GPUs), high memory or other heavily resource-intensive processes. AppStream is designed to let you write one code base and have your application run on Mac, Windows or mobile devices.
With the increase in mobile gaming, one of the biggest issues developers face is trying to target every possible device on the market. While the devices share different screen sizes, operating systems and hardware specifications, they all share the need for a relatively common user experience.
Another big issue with mobile games is being able to make a game that might have a lot of computational or graphical display logic fit into devices that may have as little as 512 MB of random access memory (RAM). And, at the same time, developers want it to look great and take full advantage of a device that has ten times that amount of RAM (for instance, a high-end tablet computer). AppStream offloads the graphical and computational workload to the cloud, letting you build your applications and have them simply render on the end user's device.
You should only use AppStream if your app would not do well as a Web application, such as:
- Cross-platform (including mobile) games
- Multi-player games
- Graphic-intensive applications (such as graphic design programs)
- Other cross-platform applications that you want to use Windows libraries to build
You should not use AppStream if
- A simple Web application would work
- You need to support offline mode
- You don't want to use Windows-based libraries in your application
- Your application does not require intensive graphics or CPU or network utilization
AppStream's major disadvantage: It requires full connectivity. Unfortunately, the cellular network doesn't provide absolute coverage, and if users go out of range, they won't be able to use the app. AppStream will only function with always-on devices. It also uses data no matter what you're doing, so users will have to have a higher data plan to take full advantage of it. The trade-off is that developers will be sure that their users get the best experience, no matter what devices they're on.
AppStream may not be for everyone, but it certainly has its uses in the gaming space. If you're going to build that next great game, check out AppStream to see whether you can gain an even bigger audience by expanding your supported platforms.
Dig Deeper on AWS streaming and file transfer services
Related Q&A from Chris Moyer
Event-driven computing means no IaaS provisioning and no data center to run. Can I migrate all enterprise apps to be event-driven? Continue Reading
What is runtime as a service and how does it differ from platform as a service and infrastructure as a service? Continue Reading
The DevOps model is taking off as cloud adoption grows. But what exactly are the key responsibilities of a DevOps team in the enterprise? Continue Reading
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.