Availability of embedded app content during Mosaic maintenance

On Oxford Mosaic websites including a page which embeds an app, you can follow specific site design principles to support the availability of apps and related key content during Mosaic maintenance periods.

What happens during Mosaic maintenance

Mosaic maintenance takes the back-end system offline, resulting in the following impacts:

  1. Most Mosaic webpages will remain available to website visitors via the cache
  2. Content editing WILL NOT be available
  3. Any webpages not in the cache will display a site maintenance message, giving the time of the maintenance period
  4. It will not be possible for users to login or for visitors to access SSO-restricted content
  5. Embedded applications will be unavailable 
  6. Web visitors attempting to submit webforms will be shown the maintenance message informing them that webform submissions have NOT been saved, and that they should try again after the maintenance period ends

For embedded applications, whether they remain available on Mosaic sites or not depends on whether they use back-end or front-end code. Almost all business systems use back-end code and therefore are normally unavailable. The presence of the app on the page makes the whole page un-cacheable, so the whole page will be unavailable. For this reason, it is advisable to architect web content so as to minimise the amount of other content contained on pages which embed back-end apps.

An exception is the System Availability app (e.g. https://academic.admin.ox.ac.uk/system-availability). It uses front-end code and so will remain available. We do not have an overview of which sites embed which systems: if your site embeds local or 3rd party front-end apps, they should also remain available.

 

Ensure key content is cacheable

We suggest using the following principles in designing site content architecture:

  • Ensure the page is public – pages behind SSO will not be cached
    • If you need to link to Service Request forms in OSM, these links do not need to be on an SSO-protected page, as OSM is itself behind Oxford SSO
    • If you have to restrict the content, consider putting it on SharePoint, which will remain available when the Mosaic backend is down (but try to avoid using PDFs, which are often not accessible)
  • Avoid putting together content that will prevent the page being cached – e.g. avoid stacking front-end apps together with webforms or back-end apps on the same page
    • Login buttons to business systems are simply stylised links – they won’t in themselves prevent a page from being cached, and so long as they don’t link to another Mosaic site, the buttons will work as normal when the page is cached
  • Publish key related text content on a separate public page, using this as the advertised bookmark for key content, and linking to the app page from it – especially if you are embedding a back-end app, as the related content can remain available when the app page is not

Configure the System Availability app to be cacheable and to work dynamically when cached

 

Preparing for Maintenance

If you need to update content with alternative information because an embedded back-end app is not going to be available during a maintenance period, or to update other key content, do this in good time beforehand. Websites cannot be edited during maintenance windows, as the backend is typically unavailable for some of this time.

Public Mosaic web pages will be in the cache if they have been visited by any single user within the last 7 days. Details are given in our caching and updating of webpages information.

 

Make sure a page is cached

To prevent the very unlikely chance that a page is not in the cache, because it expires *just before* the maintenance period and no-one then visits it before maintenance begins, you can ensure the page IS in the cache at the relevant time by carrying out the following steps:

  1. Clear the existing cached content by: logging in to the site; going to the page; hover your cursor over the 'Page not updated?' option in the editing menu and clicking ‘Refresh live page’
  2. Logout fully (or use a different browser where you haven’t logged in) and visit the page as a public user

It is suggested you do this no earlier than a few days preceding the maintenance, and preferably at least a day before, to be sure of a good time margin taking the cache through the whole maintenance period.

If your site has low traffic, avoid making subsequent changes to Site Settings until after the maintenance finishes, to prevent your site's pages being cleared from the cache.

 

 

Saving a content edit will always clear a page cache. However, as this is a queued process it isn’t always instantaneous and may take some minutes. So long as updating isn’t left to just before maintenance starts, the content WILL be updated – the caching and updating of webpages information explains when your site visitors will see the content updates you make on your site. It also provides a tip for forcing an immediate update using the Refresh live page feature.

Maintenance periods and cadence

The standard Mosaic maintenance window is Thursdays between 08:00 and 10:00. A secondary window, occasionally used at busy times, is Tuesdays 08:00 – 10:00. Exceptionally, extended maintenance may need to be carried out at other times – we try to avoid impacting business hours whenever possible. Advance notifications are sent to all users, with extended notice given of any non-standard maintenance windows that are needed.

Mosaic is typically updated every 2 to 3 weeks. A variety of tasks are carried out during maintenance – it’s not all bug fixes or patching! Mosaic releases very often involve adding or extending features: modern software development methods value frequent updates as a way of adding value to products quickly, rather than waiting for big 6- or 12-monthly updates. See our Release Notes for details of our updates in each release.