In the second part on my Cloud Hosting series I'm taking a look at the Amazons collective offerings, Elastic Cloud Computing (EC2) and Simple Storage Service (S3).
Ongoing Projects
M2 Content Management System
M2 is a PHP/Javascript based
Content Management Solution
Aimed at mid to high end websites.
It's main feature is direct inline
content editing.
Snatch (Mac OS X)
Snatch is a website scraping
tool which can be used to
retrieve links, images and email
addresses from a given webpage
and linked pages.
Distribution (Mac OS X)
Distributions is a mailing list
management tool for Mac OS X.
It features support for Multiple
Classifications and some CRM
functions.
??? (Mac OS X)
This is a new project I am
working on for OS X (leopard).
more soon!
A/B testing can be used to dramically increase conversions on your e-commerce site. Here is basic overview.
Amazon EC2 and S3
Of the various 'Cloud Hosting' services I'm going to be looking at, Amazon's services are the only ones I haven't used directly. Amazon's two cloud computing services are not actually directly aimed at web hosting, rather, it is a general computing platform on top of which a hosting platform can be built and configured. Because of this developers are using EC2 for hosting applications with unusual hosting requirements. S3 is marketed somewhat separately from EC2 but in practice the two services work together to form a complete package. S3 is a storage platform based around web services, Amazon charge for the amount of data transferred in and out of the service (focussing on the bandwidth used rather than the amount stored).
Issues
EC2 instances are not persistent. What this means is that if an instance goes down, then it has to be manually restarted, and it may not have access to the same IP address or memory it had before it crashed. Another side effect of this is that an EC2 instance cannot have a domain pointed directly at it. To get domain names pointing at EC2 instances you have to use a Dynamic DNS service which allows the EC2 instance to tell the DNS system what its new IP address is every-time it boots up.
Another issue is the level of flexibility the service provides. You pretty much get access to the entire machine image and its configuration is entirely down to you. If you are uncomfortable configuring system level services and security and installing and configuring Linux server images then EC2 probably isn't for you.
EC2 has not exactly been know recently for its reliability. As a cloud computing service its supposed to be highly redundant and resistant to large scale failure. A number of full outages in recent times,however,have shown this not to be the case. So if mission critical reliability is a big issue for you, for now its probably best to avoid both EC2 and S3 until they get the bugs ironed out.
Advantages
The main advantages to Amazon's services revolve around its flexibility. You can set up an EC2 instance (so long as its using linux) to do pretty much anything from being an email relay to a fully fledged ruby on rails web hosting platform. Because its cloud based it has the same advantages as other similar services such as scalability and high levels of uptime and resilience.
Amazon certainly seem to be serious about the service and have been active in upgrading and maintaining it as interest and use has increased. Apart from that, EC2 is fairly cheap in comparison with services like Mosso and the pay as you go model also seems sensible.
Conclusion
Well, thats about all I can say about Amazons EC2 and S3 for now. They seem aimed primarily at the professional developer rather than the novice and are more flexible than many other hosting services (with some obvious limitations also).
If you have any practical experience using EC2 and S3 then please feel free to drop me a line and let me know, or comment using the form below!