Wake-on-request from Private Network?

Hiya folks I’m new ish in working with Fly Machines and it’s been pretty good! I had set up an application and tested out wake-on-request when it goes from public internet directly to the app and it works.

I wanted to enable caching on my app so I set up Nginx as a separate Fly app and have Nginx go to my primary app (with scale-to-zero enabled) through private networking (i.e. appname.internal DNS). Unfortunately, the request proxied from Nginx doesn’t seem to wake the machine up. Can I get some confirmation of whether or not requests from private network should wake the machine up?

1 Like

AFAIK it’s a function of Fly’s proxies that wake up machines. Direct internal communication wouldn’t go through a Fly proxy, so doesn’t wake up machines.

The solution is to use Flycast - communicating via the internal Flycast address associated with your machine should then wake it up.

Note: I don’t believe this wake-up functionality works with UDP - so (currently) TCP only.

1 Like

Direct internal communication wouldn’t go through a Fly proxy, so doesn’t wake up machines.

That was my guess too, thanks for validating.

I saw that Flycast mentions the following statement in the docs:

Flycast offers the same geographically-aware load balancing as the public Fly proxy while restricting traffic to private networks.

But the phrasing “offers the same” makes me wonder if it goes to the same code path / mechanics to wake machines or not. Didn’t want to go down this path without first confirming that I didn’t misconfigure something, but sounds like this is worth a try. Thanks!

1 Like

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