A közzétett appod az újraközzététel alatt is elérhető marad
Ha újraközzéteszel egy appot a Mythexen, az élő oldalad mostantól az előző verziót szolgálja ki, amíg az új build el nem készül, és csak utána vált át. Korábban az újraközzététel az egész build idejére offline tette az oldalt: a látogatók azt látták, hogy „Ez a közzétett app offline, vagy a link nem található”, majd kb. egy perc múlva az oldal frissítésre újra működött. Javítottunk két másik módot is, ahogyan egy élő app tévesen offline látszhatott.
1. Az újraközzététel nem veszi le az oldaladat
A háttérben minden közzétett appnak van egy rekordja, amely megmondja, melyik buildet kell kiszolgálni. Az újraközzététel ezt a rekordot használta fel, és az építés idejére „épülőnek” jelölte — az élő oldalt irányító edge-réteg pedig csak az „élő” jelölésű rekordokat szolgálta ki. Így minden újraközzététel eltüntette az oldalt, amíg a build be nem fejeződött. Egy kis tesztappon reprodukáltuk: újraközzétételenként kb. 50 másodpercig offline volt.
Most, amikor egy már élő app újraközzététele indul, a rekord emlékszik, hogy van korábbi build, és továbbra is arra mutat. Az edge a korábbi buildet szolgálja ki, amíg az újabb épül, a mutató pedig csak akkor vált az új buildre, ha az sikeres. Ha az új build meghiúsul, a látogatóid nem veszik észre — a régi verzió egyszerűen fent marad.
Egy első közzétételnél, vagy egy szüneteltetett vagy visszavont app újraközzétételénél az oldal továbbra is csak akkor lesz élő, amikor az építés befejeződik — nincs korábbi verzió, amit mutathatnánk.
2. Egy rövid hiba nem tűnik „nem található”-nek
A közzétett appod előtt álló szolgáltatás lekérdezi az API-tól, hol él az egyes oldalak. Régen minden sikertelen választ — egy pillanatnyi szerverhibát, egy megszakadt kapcsolatot — „ez az oldal nem létezik” jelentésnek vett, és az offline oldalt mutatta. Néhány másodperccel később a frissítés működött, ami zavaró volt.
Most csak a valódi „nem található” válasz számít nem találtnak:
- Minden más hibát egyszer újrapróbálunk.
- Ha még így is meghiúsul, az edge az oldalt az utolsó ismert jó válaszból szolgálja ki legfeljebb egy óráig.
- Csak akkor mutat „ideiglenesen nem elérhető” oldalt, ha még soha nem kapott választ — és soha nem „nem található” oldalt.
Az egyéni domainek a termelési és a staging rendszerünket párhuzamosan kérdezik, így egy lassú staging szerver sosem tartja fel a termelési domaint.
3. A szüneteltetett app megmondja, hogy szüneteltetve van
A közzétett appok a kreditegyenlegeden futnak. Ha elfogy, az app szünetel, amíg fel nem töltöd — és magától visszatér, amint feltöltöd. Régen azonban a szüneteltetett app pontosan úgy nézett ki, mint egy törölt.
Most a szüneteltetett app látogatója „Ez az app szüneteltetve van” üzenetet lát, a tulajdonos számára visszavezető linkkel, és a válasz soha nem gyorsítótárazódik, így az app azonnal elérhető, amint újraindítják. Ha egy app más okból nem érhető el, a látogatók azt látják, hogy „Ez az app nem érhető el” — az okot nem közölve.
Miért fontos ez
A közzétett app olyasmi, amit megosztottál: egy bio-linkben, névjegykártyán, az első ügyfeleidnek. Úgy kell viselkednie, mint egy valódi weboldal: maradjon fent, amíg javítod, bírja ki a pillanatnyi hibákat, és legyen őszinte, ha szünetel.
A közzétételről többet a dokumentációban olvashatsz: hogyan tegyél közzé és tárhelykorlátok. Az infrastruktúra oldalán ugyanez az elv: hogyan jutottunk el a saját deployjainkkal nulla 502-es hibáig.