fabiolb / fabio

Consul Load-Balancing made simple
https://fabiolb.net
MIT License
7.25k stars 619 forks source link

Start Listeners After Routing Table Initialized #756

Open codyja opened 4 years ago

codyja commented 4 years ago

Hi, I noticed that fabio will start it's listeners, begin passing health checks, and start receiving inbound traffic before the route table is finished initializing. This causes a lot of 404 errors since routes aren't found. This is especially noticable in networks with about 7-8k routes due to how long the route table initialization takes. I also found this related issue that was closed out. https://github.com/fabiolb/fabio/issues/248

An alternative would be to have an endpoint that we can do a health check against to confirm route table has been initialized.

Thanks!

codyja commented 4 years ago

It looks like the "manual" routes (which we don't really use) loads first and so the listeners go active before the full list of services comes back from Consul services.

ketzacoatl commented 2 years ago

I agree that it would be really nice to have fabio finish the route initialization before receiving inbound traffic.