zajdee O pricinach vypadku uz nemusime spekulovat. Cloudflare vydali podrobny post-mortem report. https://blog.cloudflare.com/18-november-2025-outage/
zdeneksvarc TLDR od ChatGPT Stručné shrnutí: Cloudflare výpadek 18. listopadu 2025 Co se stalo 11:20 UTC začaly rozsáhlé problémy v síti Cloudflare – uživatelé viděli chyby 5xx na webech za Cloudflare. Nebyl to útok. Příčinou byla změna oprávnění v databázi, která způsobila vytvoření konfiguračního souboru (feature file) s dvojnásobnou velikostí. Bot Management systém nedokázal soubor této velikosti zpracovat → docházelo k pádům a opětovnému nabíhání. Vadný soubor se generoval každých 5 minut v ClickHouse clusteru, což způsobilo cyklickou nestabilitu. Dopady Ovlivněna byla hlavní infrastruktura Cloudflare: CDN, Bot Management, Workers KV, dashboardy a další služby. Projevy: výrazné zvýšení počtu chyb, nestabilita služeb až do zhruba 17:06 UTC. Náprava Zastavení šíření vadného souboru, distribuce známé dobré verze. Restartování hlavních proxy komponent. Výrazné zlepšení po 14:30 UTC, plná stabilita okolo 17:06 UTC. Závěry Jediná neočekávaná změna v databázové části může vyvolat rozsáhlý výpadek i v masivní distribuované infrastruktuře. Nutnost lepších procesů pro změny konfigurací, testování a bezpečný rollout/rollback.
zdeneksvarc V tom případě si ještě doplňme Rust. Aha, tak na obrázku letí zleva :-D AI přepis: 1) Co se stalo Došlo k rozsáhlému výpadku internetu, protože spadla infrastruktura Cloudflare. Cloudflare funguje jako globální reverzní proxy a ochrana proti botům / DDoS. Výpadek Cloudflare stáhl dolů i služby na něm závislé (včetně DownDetectoru). 2) Bezprostřední příčina Cloudflare BOT management používá ML model s konfiguračním „feature file“. V něm vznikly duplicitní záznamy → soubor přesáhl limit 200 položek. Tento limit je napevno v kódu, aby se zabránilo neomezené pre-alokaci. 3) Role Rustu Backend Cloudflare je psaný v Rustu. Při parsování feature names probíhá memory pre-allocation. Po překročení limitu vrací append funkce chybu. Kód tuto chybu zpracoval přes unwrap(), který při Err nebo None vyvolá panic → pád workeru. 4) Proč je unwrap problém unwrap() působí dojmem „vytáhni hodnotu“, ale reálně znamená „vytáhni hodnotu, nebo ukonči program“. V produkci by unwrap neměl být použit, zejména v kritické infrastruktuře. V Rust komunitě probíhá debata, zda by se neměl jmenovat např. unwrap_or_panic(). 5) Klíčové sdělení Nešlo o selhání Rustu, ale o lidskou chybu Kód překročil vlastní limit. Chyba nebyla správně ošetřena. Použití unwrap() způsobilo paniku a tím i pád Cloudflare workerů. 6) Doplňující detaily Autor vysvětluje Rust typy Option a Result, které umožňují buď hodnotu, nebo bezpečnou reprezentaci chyby. Ukazuje rozdíl mezi unwrap(), unwrap_or(), expect() atd. Panika neměla nic společného s nedostatkem paměti; šlo o překročení pevného limitu 200 položek.
lacosta zdeneksvarc uz ked spominas luskouna/supinavca tak je uvaha ho krmit cez https://frankenphp.dev/ minimalne v blizkej dobe otestujem ...
zdeneksvarc lacosta Kdyby Pangolin z nějakého důvodu nevyhovoval, tak mrkni na Wiredoor. Pangolin nabral nějaký venture kapitál a začínají dělat licenční kotrmelce.