Websites and web applications have traffic patterns that are often unpredictable. After all growth in traffic is really what we’re after. However, even with the best stress testing, it’s sometimes difficult to predict what areas of the site will get innundated, or how the site will scale.
Degrade gracefully describes an architecture built specially to unwind in a smooth manner without any real site-wide outage. What do we mean by that? We mean build in operational switches to turn off components in the site. Have a star rating on pages? Build an on/off switch for your operations team to disable it if necessary. Have site-wide comments, or robust search? Allow those features to be disabled. If possible, architect in a read-only mode for your site that you can turn on in a real difficult situation. By operationalizing these components, you give more flexibility to the operations team, and reduce the likelihood of having a complete outage.