Nginx vychází stále pod dvouklauzulovou licencí BSD, takže se dá libovolně forknout.
nginx samotný se už mnoho let v podstatě nerozvíjí (kromě http/3 a quicu, které ještě ale moc používat nelze), čím dál více nám tam chybí řada užitečných funkcí, které se do nginx plus přidávají jak na běžícím pásu.
Platit ročně 100k za každou instanci je prostě příliš i pro ty velký klienty, to už je výhodnější koupit pár celých f5.
Jako plnohodnotná alternativa včetně HTTP serveru asi https://caddyserver.com/
Pokud je potřeba jen reverzní proxy, je fajn Traefik
ani caddy asi není plnohodnotná náhrada, nginx toho umí opravdu spoustu.
Na load balancing a proxy je daleko schopnější třeba haproxy. Na servírování souborů zase varnish. Nginx je přesně mezi těmito dvěma a právě jeho univerzálnost je klíčová, caddy k němu je hodně v závěsu, ale je mnohem cpu náročnější a jeho provoz je daleko více zatížený špičkami.
K traefik se sluší doplnit třeba i envoy. Caddy má jednu zajímavou vlastnost ze všech zmíněných, může fungovat i jako knihovna a dá se kolem toho postavit aplikace s určitou logikou, na to se v nginxu zneužívala lua, což víme jak se třeba CloudFlaru vymstilo.
Ono je toho zase dost, co umí Caddy a neumí nginx. Tj. některé problémy, které se řeší v nginxu nějak, jde v Caddy vyřešit jiným způsobem. Caddy má třeba REST rozhraní pro konfiguraci, tj. můžete Caddy 100% ovládat přes API. Nebo má vestavěnou podporu pro ACME, tj. vydávání certifikátů od Let's Encrypt nebo ZeroSSL (za projektem Caddy stojí právě ZeroSSL). A dá se rozšiřovat pomocí pluginů psaných v Go (existuje spousta komunitních pluginů), což je asi jednodušší, než rozšiřování nginxu.
to samozřejmě. Když ale nahrazuješ něčím nginx, potřebuje z počátku alespoň funkce, které jsi v nginx používal.
Caddy toho umí spoustu, ale s čím třeba hodně bojujeme a často právě kvůli tomu ani nenasazujeme na větší provoz je spotřeba paměti, s jeho reloadem, acme protokolem a dalšími věcmi to umí růst neuvěřitelně nahoru.
má peaky u spotřeby paměti i cpu, v poslední době v upstreamu opravili řadu memory leaků spojených s hot realoadem, ale to už jsme nezkoušeli.
Provozně je to zatím pro mě nepredikovatelné, někdy cpu nelogicky vylétne příliš nahoru, paměť skáče na násobky a není jasné, která konfigurace a jak to vlastně ovlivňuje.
Proti treafiku to je nesrovnatelné, ten funguje dobře.