Hooking your apps into Amazon Web Services
Connecting your application into the Amazon Web Services (AWS) isn't complicated, particularly if you've done Web service programming on other projects.
Before you begin, you'll need to obtain access credentials. If you already have an account with Amazon, you can easily extend it to include access to Amazon Web Services. You sign up for each service separately and, in the process, acquire access credentials. These credentials are used to create digital signatures required in requests made to any of the paid AWS components. Amazon services also accept X.509 certificates. Amazon can create a certificate for you when you subscribe to a service, or you can create your own and upload it to Amazon. Once you have your access credentials settled, you can begin working with the services themselves.
Amazon's online developer materials appear to slightly favor Java over other languages. But only slightly. While all the command-line tools for EC2 are written in Java, AWS tutorials exist for Ruby, PHP, and C--. In addition, several scratchpad applications written in HTML + JavaScript provide "live" interaction with individual Amazon Web services.
For example, download the SQS JavaScript scratchpad from the SQS developer site, launch it in a browser, and you're presented with what amounts to a control console into the SQS APIs. Enter your AWS AccessKey ID and AWS Secret Access Key (the credentials I mentioned above) into the appropriate text boxes, and you can create queues, list queues, send messages, receive messages, and more or less dance through the entire SQS API. Not only are the scratchpads helpful for working out the protocols used in AWS transactions, but prowling the source is an ideal way to learn the APIs.
In addition, developers looking for a leg up in building AWS-aware applications should investigate the plentiful open source library offerings linked to from the AWS Developer Connection site. JetS3T is a popular Java interface to the S3 service.
Another open source Java library, typica, provides programming interfaces to EC2, SQS, SimpleDB, and DevPay. So before embarking on a roll-your-own approach, you should spend some time looking into the open source libraries available to verify that a trailblazer hasn't already created what you need.
This is precisely what I did and so discovered an open source Python library called "boto," named after an Amazon River dolphin, that simplifies working with EC2, S3, SQS, SimpleDB, and Mechanical Turk. (You can download boto.)
Sign up for ITworld's Daily newsletter
Follow ITworld on Twitter @IT_world
On Twitter now
Amazon Web Services
Powered by Twitter
jfruh
Apple syncing patent can't come soon enough
pasmith
New Twitter features borrow from 3rd party clients
Esther Schindler
Open Source Changes the Software Acquisition Process
mikelgan
How to set up continuous podcast play on the new iTunes
David Strom
Five important Windows 7 mobility features
sjvn
Guard your Wi-Fi for your own sake
Sandra Henry-Stocker
Grepping on Whole Words
Sidekick: The Good News & the Bad News
Either way you look at it Microsoft Data Center management did not follow standards or best practices in this failure. In which case it makes me wonder more about the outsourcing of corporate data much less personal data.
- mburton325
Join the conversation here
Quick, practical advice for IT pros. Made fresh daily.
Want to cash in on your IT savvy? Send your tip to tips@itworld.com. If we post it, we'll send you a $25 Amazon e-gift card.












