sp497
sp497

Reputation: 2491

How to replicate existing aws-ec2 instances and s3 data on nearest location/endpoints for improved network throughput?

I am a remote developer working out of India. My client is based out of North America and has his ec2 servers/s3 data kept in the us-west-2 region.

The number of hops needed to fetch the data is obviously big and thus wastes a lot of my time during testing, as we are dependent on large data coming in from s3.

How can I replicate the existing ec2/s3 system to have an endpoint in India so that my testing performance can be increased?

Upvotes: 0

Views: 31

Answers (1)

Michael - sqlbot
Michael - sqlbot

Reputation: 179284

How to geographically replicate an entire environment is a very broad topic.

But there is a potential solution you should investigate, S3 Transfer Acceleration, which optimizes your connection to the bucket from distant locations, by creating a mesh of global endpoints for the bucket using the AWS Edge Network (the same global network of edge locations that provide services like CloudFront and Route 53) so that your traffic is routed to the nearest edge, where it hops on the managed AWS network and then rides back to the actual bucket location. The content isn't replicated, but your connection is transparently proxied, providing signicant optimization.

There's a test page at the link, above, that will illustrate the impact of transfer acceleration on your uploads, but the improvement of downloads is similar.

When the feature is enabled on a bucket, the bucket works the same as always, with no change, unless you access it using the accelerated endpoint, bucket-name.s3-accelerate[.dualstack].amazonaws.com, which causes you to connect to the nearest accelerate endpoint rather than all the way back to the actual bucket in its home region. (Add .dualstack for IPv6.) The SDKs provide a way to specify that the accelerate endpoint be used.

Upvotes: 1

Related Questions