Cloud Computing, AWS, Parallel Programming
Keywords: cluster, cloud, cloud programming, thread programming, performance, scaling, AWS, Amazon Web Services, EC2, high performance computing
I have been writing threaded, parallel programs for many years, firstly (and more importantly) for responsiveness (UI handling, listening on a socket, etc.) and secondly to get more speed out of modern multi-core machines. I have also developed systems that work over a cluster to scale processing capacity (and also for improved reliability).
I have experience using Amazon Web Services, and understand the APIs for controlling this from PHP. AWS is good value for handling uneven load, in particular when the peak load cannot be handled on a single high-spec machine, but if your website or application is 24/7 with fairly consistent load then dedicated servers are better value (e.g. one quarter of the per-month cost, at mid-2011 prices). For certain load patterns I have found Rackspace gives better value for money, though I prefer Amazon's use of ECUs to make it clear how much CPU you get.