Dustin, Thanks for your response. I do agree with you that I am essentially limited by the speed of light. We intend to have the application across Amazon EC2 regions for two reasons a) ensuring against the outages like the one this May 2011 b) to provide a better performance for US-West and US-East.
Regarding traffic originations from East & West we have convenient geographical IP based load balancers which help us to get the closest EC2 region and from there on to an availability zone. Our application needs to maintain data in memcached. So we have distributed the list of memcached servers across regions. Now we find that this has introduced a signifcant amount of latency. >From what I have read we may need to replicate the data. But this will introduce attendant problems of consistency which we will have to resolve through a protocol like quorum. I was wondering if memcached has any option of automatically taking care of replication and also ensuring consistency. Regards Ganesh On Jul 5, 1:33 pm, Dustin <dsalli...@gmail.com> wrote: > On Jul 4, 10:32 pm, TV Ganesh <tvganesh...@gmail.com> wrote: > > > Dustin, > > I guess you are saying that when we use memcached across > > regions then latencies are a given. > > Is there a way out of this issue. Is it through replication? Does > > memcached have an option for replication? > > OK, so by "across regions" you're referring to Amazon EC2 regions. > You should note that. :) > > There's nothing you can do to make light go faster. When you are > communicating between two machines in the same availability zone, you > can expect some, but probably negligible latency for your needs. When > you jump to an entire other region, you should expect an additional > 40ms added to your request processing. It just takes that long for > the message to get there and the response to get back. > > If you had super magical bidirectional replication that was > asynchronous and you didn't care whatsoever about data consistency, > you could keep an additional copy in both locations and stay roughly > 20ms behind. If you did have this magic, I would strongly recommend > against using it. > > Knowing what the right answer is requires knowing a lot more about > what your application is doing. For example, why do you need to > pretend like the entire United States of America is one data center? > Is it possible to segment your traffic such that data is localized > into one availability zone, but potentially can fail over to another > in a DR scenario?