# Help with "zero downtime" setup

**URL:** <https://meta.discourse.org/t/help-with-zero-downtime-setup/163668>\
**Category:** Self-hosting\
**Tags:** hosting\
**Created:** [September 10, 2020, 7:44pm UTC](https://meta.discourse.org/t/help-with-zero-downtime-setup/163668 "2020-09-10T19:44:50Z")\
**Posts on this page:** 1\
**Showing post:** 10

<div class="post-metadata">

**Author:** ![marianord](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/marianord/32/90502_2.png) [@marianord](https://meta.discourse.org/u/marianord)\
**Post date:** [September 10, 2020, 10:20pm UTC](https://meta.discourse.org/t/help-with-zero-downtime-setup/163668/10 "2020-09-10T22:20:49Z")

</div>

The kind of details that @Stephen is pointing out are really important. Because we need to understand what _zero downtime_ is, for example I could hack a Zero Downtime requirement by doing the following:

I define zero downtime as _never_ responding to the user with a code other than HTTP 200 when the request is valid (keeping 300 and 400 open as needed). Then I deploy Discourse in a 10$ droplet in a one-container solution and add [Add an offline page to display when Discourse is rebuilding or starting up](https://meta.discourse.org/t/adding-an-offline-page-when-rebuilding/45238) to accomplish the no 500 errors. This way I don’t show a site that has been down.

Would I in a rational mindset think that this is zero downtime? Never. Does it works as proposed? Of course. And I could go ahead and add a standby server in another region to be even more _zero downtime proof_.

That is why qualification and semantics are important. Is not the same to always show something to always have functionality on the site.

---

_[View the full topic](https://meta.discourse.org/t/help-with-zero-downtime-setup/163668)._
