They look like this:
client -> region x edge -> region x worker -> instance
client -> region y edge -> region x worker -> instance
The only difference is the hop in our internal network has extra latency unless the client is reaching region x by chance.
The fly-region
header represents the edge region where the client was routed to (via BGP). Unless you have an instance in every single one of our regions and all your clients have perfect routing with us, then you can’t know if fly-prefer-region
was used.
We also have some regions that are “edge-only” (but not for long). So you’d see jnb
in the fly-region
header and it couldn’t possible reach an instance in the same region since we don’t have “workers” there.