Firstly I'd like to mention that rate limiting is usually applied to prevent abuse of an API.
Trying to get around this might be considered a breach of the terms and conditions of using the service. Have a good think about this before proceeding.
Firstly, if I have 3 elastic IP's connected to my Amazon EC2 instance,
does that mean that effectively my server can appear to be located on
three different IP's, so I can effectively triple any sort of rate
limiting allowance?
You can only assign one elastic IP to a classic EC2 instance.
Secondly, is there a way to determine which elastic IP my EC2 server
uses, and can this be changed whilst the server is running?
Yes you can check the "Elastic IPs" section in the EC2 Management Console. This will show you which Elastic IPs are mapped to which EC2s.
In theory you could manually (or automatically) cycle new Elastic IPs for a given EC2.
Other ways to get more request throughput
- You could simple use smaller machines. Instead of using a small instance on AWS you might elect to use 2 micros.
- You could use spot instances. Each spot instance would come with it's own IP. You could architect your application to stay within the allowed limits, but use as many micro instances as you can get your hands on to do it.