UDP connections timeout after exactly 5 minutes despite active keepalives

Hi… The UDP side of the Fly.io platform is limited, even more so than is apparent at first glance, and a little underspecified, but my guess is that the behavior that you’re seeing is primarily due to a misunderstanding of how fly.toml works.

(That configuration file trips up many people at first, even those with extensive prior networking experience—in part because flyctl itself usually doesn’t warn about logical, or even syntactic, mistakes.)

You didn’t mention process groups at all, for example, which are the only way to get the structure that you sketched out to work reliably.

I’m not with Fly.io, but one app per external service is the sweet spot of their platform, in my opinion.

Anything else, you find yourself fighting the tools, TOML serialization, etc.

It’s mainly intended for a fleet of Machines that are interchangeable and more or less disposable.

An architecture that instead emphasizes a single Machine per port is generally a bad idea—but might be okay in special cases, if, say, the clients themselves are equipped to failover from one port to the other.

Anyway, just my own 2¢…

1 Like