Outsource Your Infrastructure with S3, EC2, SQS, FPS, and SimpleDB
The web is full of opportunities for companies both large and small, but smaller companies face a difficult problem: infrastructure. Industrial-strength infrastructure can be costly to buy and maintain, so smaller companies often do without. “Yet in today’s world of web publicity flash storms caused by sites such as Slashdot and Digg, the difference between a web application serving a few dozen users and serving thousands may be no more than a glowing article and a few hours’ time,” notes author James Murty. “Although this kind of attention may be exactly what you hope for, unless you have invested heavily in infrastructure, your application may not survive the onslaught.” A possible answer, according to Murty, comes in the form of Amazon’s infrastructure web services. In his book, Programming Amazon Web Services: S3, EC2, SQS, FPS, and SimpleDB (O’Reilly), Murty explains how you can take advantage of Amazon’s massive computing infrastructure to build your own applications. Amazon Web Services lets businesses and individuals “rent” computing power, data storage, and bandwidth on this vast network, and, best of all, you only pay for what you use. “We’re witnessing the beginning of a new era in computing, in which the main empowering features of software–cheapness, accessibility, and flexibility–are being extended to the infrastructure level,” say Murty. “Amazon Web Services are the first of many systems that will make it easier for small companies and individuals to build web-scale applications that scale massively and can compete with established players, without the need for massive up-front investment.” Murty provides all the background and technical details you need to understand Amazon Web Services, including code samples that reveal how to use the APIs, and example applications. The book explains how to use the five web services in Amazon’s Web Services offering: Simple Storage Service (S3) to store and retrieve any amount of data using application servers, unlimited data storage, and bandwidth Elastic Compute Cloud (EC2) to buy computing time, so you can requisition machines, load them with an application environment, manage access permissions, and run your image using as many or as few systems as needed Simple Queue Service (SQS), Amazon’s web-scale messaging infrastructure, to store messages as they travel between computers Flexible Payments Service (FPS) to structure payment instructions and allow the movement of money between any two entities, humans, or computers SimpleDB to create and store multiple data sets, query your data easily, and return the results.