Requests are being sent to fly machines in geographically distant regions

Sorry if I’m missing something obvious here, I’m just getting started with fly. I have an app that doesn’t have any persistent state that needs to be synchronized between machines, but there is some short-lived state that needs to be retained for certain sets of requests. This state is kept in memory. So essentially once a client connects to a specific fly machine, I need it to continue to make requests to that machine for at least several seconds.

I tried deploying my app with one machine in each of sjc, ewr, and arn, then I tested it from various locations using a VPN. It appears to be load balancing some of those intermediate requests across the regions, even if I’m using the VPN to connect very close to a different region. I would have expected requests to always go to the nearest region. Is there a way to do that?

I know fly.io uses Anycast so it might not be possible to guarantee what I’m attempting, because my understanding is that if you’re on a boundary where it’s not clear which route to prefer, individual requests may get sent to either location.

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.