Vaša publikovaná aplikácia teraz zostáva dostupná aj počas nového publikovania
Keď na Mythex znovu publikujete aplikáciu, váš živý web teraz slúži predchádzajúcu verziu, kým nový build nie je pripravený, a potom sa prepne. Pred touto zmenou nové publikovanie znamenalo, že web bol počas celého buildu offline — návštevníci videli „Táto publikovaná aplikácia je offline alebo odkaz nebol nájdený“ asi minútu a potom sa tá istá stránka po obnovení znova zobrazila. Opravili sme aj dva ďalšie spôsoby, ako mohla živá aplikácia omylom vyzerať offline.
1. Nové publikovanie už neznamená výpadok webu
Za scénou má každá publikovaná aplikácia záznam, ktorý hovorí, ktorý build sa má slúžiť. Nové publikovanie tento záznam použilo znova a počas celej doby ho označilo ako „building“ — a časť nášho edge, ktorá smeruje návštevníkov, slúžila iba záznamy označené ako „live“. Takže každé nové publikovanie web zmizlo, kým build neskončil. Reprodukovali sme to na malej testovacej aplikácii: asi 50 sekúnd offline pri každom novom publikovaní.
Teraz, keď nové publikovanie začne na už živej aplikácii, záznam si pamätá, že existuje predchádzajúci build, a naďalej naň ukazuje. Edge slúži tento predchádzajúci build, kým sa nový zostavuje, a ukazovateľ sa presunie na nový build až po jeho úspešnom dokončení. Ak nový build zlyhá, vaši návštevníci si nič nevšimnú — stará verzia zostane dostupná.
Prvé publikovanie alebo nové publikovanie aplikácie, ktorá bola pozastavená alebo zrušená, sa stále zverejní až po dokončení buildu — predchádzajúca verzia tu neexistuje, takže nie je čo zobraziť.
2. Krátky výpadok už nevyzerá ako „not found“
Služba pred vašou publikovanou aplikáciou sa pýta nášho API, kde každý web žije. Kedysi považovala akúkoľvek neúspešnú odpoveď — dočasnú chybu servera, prerušené spojenie — za „tento web neexistuje“ a zobrazila offline stránku. Obnovenie o sekundu neskôr fungovalo, čo bolo mätúce.
Teraz sa ako „not found“ počíta iba skutočná odpoveď „not found“:
- Každé iné zlyhanie sa zopakuje raz.
- Ak zlyhá aj to, edge slúži web z poslednej známej dobrej odpovede najviac hodinu.
- Iba ak nikdy nedostal odpoveď, zobrazí stránku „dočasne nedostupné“ — nikdy „not found“.
Vlastné domény sa pýtajú naše produkčné a testovacie systémy paralelne, takže pomalý testovací server nikdy nemôže zdržať produkčnú doménu.
3. Pozastavená aplikácia hovorí, že je pozastavená
Publikované aplikácie bežia na vašom kreditovom zostatku. Ak sa vyčerpá, aplikácia sa pozastaví, kým ho nedoplníte — a potom sa sama znova spustí. Pozastavená aplikácia však kedysi vyzerala presne ako zmazaná.
Teraz návštevník pozastavenej aplikácie uvidí „Táto aplikácia je pozastavená“ s cestou späť pre vlastníka, a odpoveď sa nikdy necachuje, takže aplikácia je dostupná hneď, ako sa obnoví. Ak je aplikácia nedostupná z iného dôvodu, návštevníci uvidia „Táto aplikácia nie je dostupná“ bez toho, aby im bolo povedané prečo.
Prečo je to dôležité
Publikovaná aplikácia je niečo, čo ste zdieľali: v odkaze v bio, na vizitke, s prvými zákazníkmi. Mala by sa správať ako skutočný web — zostať dostupná, kým ju zlepšujete, prežiť drobný výpadok a byť úprimná, keď je pozastavená.
Viac o publikovaní nájdete v dokumentácii: ako publikovať a limity hostingu. A infraštruktúrna stránka tej istej myšlienky: ako sme dosiahli nula 502 chýb pri nasadeniach.