Blog

Je gepubliceerde app blijft nu online terwijl je hem opnieuw publiceert

Wanneer je een app op Mythex opnieuw publiceert, blijft je live site nu de vorige versie tonen tot de nieuwe build klaar is, en schakelt dan over. Vóór deze verandering haalde een herpublicatie de site voor de hele build offline: bezoekers zagen “This published app is offline or the link was not found” gedurende ongeveer een minuut, en daarna werkte dezelfde pagina weer na verversen. We hebben ook twee andere manieren gefixt waarop een live app ten onrechte offline kon lijken.

1. Opnieuw publiceren haalt je site niet meer neer

Achter de schermen heeft elke gepubliceerde app een record dat aangeeft welke build er moet worden getoond. Een herpublicatie hergebruikte dat record en markeerde het voor de duur als “bouwen”, en het deel van onze edge dat bezoekers doorstuurt, toonde alleen records die als “live” waren gemarkeerd. Dus maakte elke herpublicatie de site onzichtbaar tot de build klaar was. We reproduceerden het op een kleine testapp: ongeveer 50 seconden offline per herpublicatie.

Nu onthoudt het record, wanneer een herpublicatie start op een app die al live is, dat er een vorige build bestaat, en blijft het daarnaar wijzen. De edge toont die vorige build terwijl de nieuwe bouwt, en de aanwijzer verschuift alleen naar de nieuwe build wanneer die slaagt. Als de nieuwe build faalt, merken je bezoekers niets: de oude versie blijft gewoon online.

Een eerste publicatie, of het opnieuw publiceren van een app die gepauzeerd of gedepubliceerd was, gaat nog steeds pas live wanneer de build klaar is, want er is geen vorige versie om te tonen.

2. Een korte storing ziet er niet meer uit als “niet gevonden”

De dienst voor je gepubliceerde app vraagt aan onze API waar elke site staat. Die behandelde vroeger elk niet-succesvol antwoord, een tijdelijke serverfout, een verbroken verbinding, als “deze site bestaat niet”, en toonde de offline-pagina. Een seconde later werkte het wel, wat verwarrend was.

Nu telt alleen een echt “niet gevonden”-antwoord als niet gevonden:

  • Elke andere fout wordt één keer opnieuw geprobeerd.
  • Faalt het nog steeds, dan toont de edge de site vanuit het laatste bekende goede antwoord, tot een uur lang.
  • Alleen als er nog nooit een antwoord was, toont hij een pagina “tijdelijk niet beschikbaar”, nooit “niet gevonden”.

Eigen domeinen vragen ook ons productie- en stagingsysteem tegelijk, zodat een trage stagingserver nooit een productiedomein kan ophouden.

3. Een gepauzeerde app zegt dat hij gepauzeerd is

Gepubliceerde apps draaien op je creditsaldo. Als dat op is, wordt de app gepauzeerd tot je bijvult, en dan komt hij vanzelf terug. Maar een gepauzeerde app zag er vroeger precies zo uit als een verwijderde.

Nu ziet een bezoeker van een gepauzeerde app “This app is paused”, met een manier terug voor de eigenaar, en wordt het antwoord nooit in de cache opgeslagen, zodat de app meteen weer bereikbaar is zodra hij is hervat. Als een app om een andere reden niet beschikbaar is, ziet de bezoeker “This app isn't available”, zonder te horen waarom.

Waarom dit ertoe doet

Een gepubliceerde app is iets wat je hebt gedeeld: in een bio-link, op een visitekaartje, bij je eerste klanten. Hij moet zich gedragen als een echte website: online blijven terwijl je hem verbetert, een storing overleven, en eerlijk zijn als hij gepauzeerd is.

Meer over publiceren in de documentatie: hoe te publiceren en hostinglimieten. En de infrastructuurkant van hetzelfde idee: hoe we onze eigen deploys naar nul 502-fouten brachten.

Mythex · Pricing · Bouw alles met AI · Website- en app-templates · Mythex vergeleken · Woordenlijst voor apps bouwen met AI · Gratis tools voor apps bouwen met AI · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)