AWS Basic Services
AWS Administration Services
AWS Deployment Services
With the AWS Solutions Architect Professional level certification, Amazon sought to identify individual administrators who are truly platform experts. Unless you've got some significant experience with AWS deployments and good familiarity with the full range of Amazon services, you probably won't have a chance at passing.
However, with this series of Cloud Academy courses, cloud expert Kevin Felichko is committed to making your learning process as smooth and productive as possible. Once complete, Kevin's guide to the Solutions Architect Professional level exam will lead you through the theoretical and practical skills you'll need to master this material.
This first course covers the key conceptual terminology and services that form the base for Amazon cloud architecting. The second course will guide you through fully-realized practical deployments, from start to finish. And the final course (late August, 2015) will focus on exam preparation and, in particular, strategies for confronting the particularly complicated style of question you'll face.
Do you have questions on this course? Contact our cloud experts in our community forum.
Application Services helps you build loosely coupled highly available, fault tolerant, applications.
There are SDKs for these services available for a variety of programming languages. With these managed services, you can spend more time on your application, delivering functionality, and less on administration and day-to-day operations.
Simple Queue Service or SQS is a fast, reliable, and scalable messaging queue service that is fully managed. Messages are stored redundantly in SQS across multiple servers and Availability Zones to ensure delivery. It can handle an unlimited number messages at any given time. The order is not guaranteed with SQS and a message can be retrieved more than once from a queue due to the distributed nature of the service.
You should consider using SQS when you have separate components of a system or different systems altogether that need to interact with one another. You can also use this service to offload requests from Primary Services which lets those Primary Services perform the job that they were intended to perform.
With CloudWatch you can use SQS to trigger Auto Scaling based on the number messages in your queues.
You pay per one million REQUESTS. A REQUEST is a 64-kilobyte chunk of data. If your message happens be 256 kilobytes, your REQUEST turns into four REQUESTS. Additionally you must pay data transfer rates for pulling data out of SQS. The pricing is per gigabyte in terabyte tiers.
Simple Workflow Service is a fully managed State Tracker and Task Coordinator. Developers can build background jobs with parallel or sequential steps. SWF is built with High Availability in mind thus insuring the reliable execution of workflow steps. It assists developers in keeping State separate from the actual units of work.
In addition to automated tasks, SWF supports human worker tasks. This service is purged for any process in which there is a specific flow of events such as an e-Commerce Order Fulfilment System.
Any workflow that requires human involvement is a candidate for SWF. Fully automated processes like video encoding are also perfect use-cases.
There are multiple factors involved in pricing for Simple Workflow Service. First you are charged for each time the workflow starts. You will continue to be charged for each day a workflow remains open or closed activities that you choose to retain. Next you are billed for each Task, Marker, Timer, or Signal in your workflow. And lastly, Data Transfers out of SWF are billed per gigabyte in terabyte tiers.
AppStream is a service that makes it possible to deliver Windows applications from the Cloud to end-users without any code modifications; this makes updates easy and fast through a centralized management platform. Best of all, you can run your Windows application on multiple platforms including Android, Chrome, iOS, Windows and Apple's devices.
As your user base increases, AppStream can automatically scale to meet demand. A common use-case is when you need to deliver applications to a distributed group of users with varying devices and data connection speeds.
For graphics-intense applications you can use GPU servers to handle the complex visuals and then stream the output to users. With AppStream you pay per usage hour with either On-Demand or Reserved streaming sessions.
Elastic Transcoder is a service designed to convert media files in a cost-effective, highly scalable, manner. The service will scale to meet your demands. It is fully managed which includes up-to-date codecs. You can add custom functionality in monitoring since Elastic Transcoder triggers events along the workflow process. A seamless integration with S3 and CloudFront makes the processing and distribution of media files available to a wider audience.
A common use-case for using Elastic Transcoder is converting files from one format to another. You can also add captions and watermarks with custom Hooks that are triggered by the workflow events. If you have a live stream of an event whether audio or video Elastic Transcoder is your solution.
Your cost for using this service is based on the output. Standard Definition which is less than 720p has a lower per minute charge than High Definition which is 720p or higher. Audio only is an option and is also charged per minute.
Simple Email Service is an outbound email sending service that takes advantage of Amazon's reputation in order to ensure reliable, high delivery rates. Real time statistics are at your disposal. The API to integrate your application with SES is very simple to use. Most AWS services are already integrated with SES through the Simple Notification Service.
Common use-cases for SES include Password Reset notifications from your custom applications. If you're using a human worker task in SWF, you can use SES to email a person to make them aware that a task is waiting for them. You are billed for 1000 MESSAGES that you send. A MESSAGE is defined as one communication to one recipient.
Additionally you are charged for data flowing out of SES per gigabyte in terabyte tiers. If you include attachments to a message you are billed per gigabyte on top of the data transfer rates.
CloudSearch is a managed search solution that supports 34 languages and includes features such as highlighting search terms, Autocomplete Faceted search, and Geospatial search. With Auto Scaling you can Scale-Out to handle elevated indexing needs and querying loads and then scale back into normal as the load decreases.
This service is ideal for applications and web sites that need search functionality whether that be for articles or e-commerce inventory based on a category and or brand. With Geospatial searching you can use CloudSearch to help users find job listings within 25 miles of their home.
Since CloudSearch runs on managed EC2 Instances you pay the per-hour rate based on the instance types used. CloudSearch requires that you send in objects to be indexed. You are billed per 1,000 BATCH upload REQUEST where BATCH is maxed out at 5 MB. Each search index you add is an additional cost that is charged per gigabyte of data storage. Lastly you are billed per gigabyte in terabyte tiers of data transferred out of CloudSearch.
Simple Notification Service is a fully managed Push Messaging service. It supports a wide variety of Endpoints including Email, HTTP REST, SMS, and SQS, to name a few. SNS is integrated with other AWS services allowing you to develop loosely coupled systems through message publications.
Topics are used for subscribing and publishing. Access to topics can be granted and or restricted through IAM. A major use-case of SNS is to facilitate the development of loosely coupled systems. SNS can also be used in mobile app notifications whether it is via SMS or device-specific notifications whether it is via SMS or device-specific notifications such as the iOS Push Notification Service.
SNS Publisher pricing is done per one million REQUESTS. A REQUEST is no bigger than a 64-kilobyte chunk. REQUESTS larger than that are charged in 64-kilobyte increments. Delivery of messages is another factor in pricing. It varies based on the Endpoint. Of note here, SQS Endpoints are free. Data transfer pricing is applicable with SNS. Transfers out are charged per gigabyte in terabyte tiers.
AWS makes building applications that are fault-tolerant, highly available, self-healing, and loosely coupled, incredibly easy.
This exam will test your knowledge of Application Services in the context of building solutions that can meet very challenging business requirements.
You should understand what each of these services do and how incorporating them into your applications keeps in the spirit of Cloud Computing.
Our next lesson will look at the many ways to Deploy and Manage Applications in the AWS Cloud.
Kevin is a seasoned technologist with 15+ years experience mostly in software development.Recently, he has led several migrations from traditional data centers to AWS resulting in over $100K a year in savings. His new projects take advantage of cloud computing from the start which enables a faster time to market.
He enjoys sharing his experience and knowledge with others while constantly learning new things. He has been building elegant, high-performing software across many industries since high school. He currently writes apps in node.js and iOS apps in Objective C and designs complex architectures for AWS deployments.
Kevin currently serves as Chief Technology Officer for PropertyRoom.com, where he leads a small, agile team.