3 ms·
>If a user makes a request from Europe, and the apps run in US East, that adds an extra 100-150ms of latency just by round-tripping across the Atlantic. These
by fauigerzigerk 3y ago
>If a user makes a request from Europe, and the apps run in US East, that adds an extra 100-150ms of latency just by round-tripping across the Atlantic.
These numbers seem high. This site shows transatlantic RTT of around 75ms: https://wondernetwork.com/pings https://wondernetwork.com/pings
If a CDN or edge computing platform reduces that to 20ms then the difference is 55ms. And it matters only for read requests that cannot be cached locally.
Whether or not its worth it depends largely on the number of requests. Perhaps reducing that number should be prioritised.
- evilantnie 3y agoYou've linked to ping/ICMP statistics, TCP is a more common use case and thus tends to be more representative of real-world applications. 100ms is a fairly realistic 90th percentile in my experience, 150ms could be in the 95th.
- fauigerzigerk 3y agoThe extra time it takes to process a TCP request compared to ICMP traffic is the same regardless of whether or not you're using an edge computing platform. It seems to me that what actually matters is the difference in latency, not the absolute numbers. That's why I think the article is incorrect when it claims that running an app in US East "adds an extra 100-150ms of latency". Not all of this is "extra". Only about 55ms are.
- roncesvalles 3y agoIf your application isn't real-time (like online gaming or multi-way voice/video), and you aren't making a bunch of requests serially from the client (very rare), I'm convinced you can serve the whole world with at most 2 datacenters - e.g. one in NYC and another in Singapore - coupled with a CDN to serve static assets. The notion that you need to replicate your infra in 10 regions in order to provide the best user experience sounds like propaganda pushed by cloud companies to make you use more product than you need.
- tptacek 3y agoIt's usually just as straightforward to serve in NA and APAC as it is to serve in 10 different regions, and it's a very sane strategy --- I'm rolling out a Vault replacement inside Fly.io right now, which is in the hot path for booting VMs up anywhere, and my initial deployment strategy is just Sydney, Ashburn, and Frankfurt. So you're right, and the only nit I have is the idea that there's a conspiracy to get you to do lots of regions. I assume, like us, most cloud providers are equally psyched at the prospect of getting you up and running in 2 regions as they would be about 2 dozen. The one thing to keep in mind here is that the software architecture considerations of going to 1 to 2 regions cover about 95% of what it takes to go from 2 to 10. To a first approx., the hard part is being plural, not how plural you are.