What are the AWS specific techniques for parallelization of software work?

    We can use following techniques to parallelize the work in AWS:

  • Multi-threading: Amazon S3 can handle requests in multi-threading mode. We can create application that can serve concurrent requests from Amazon S3.
  • DB Requests: Amazon SimpleDB also supports multiple threads. It can be used for concurrent GET requests to get data from SimpleDB. For writing to DB we can use BATCHPUT requests.
  • MapReduce: Another parallelization technique is to create a JobFlow by using Amazon Elastic MapReduce Service batch processes. It can make the long running tasks finish faster in MapReduce execution mode.
  • Elastic Load Balancing: Also we can use Elastic Load Balancing service to distribute the load across multiple web app servers dynamically.