DEV Community

Syntax - Tasty Web Development Treats

Hasty Treat - Updating / Restarting Long-Running Web Apps

In this Hasty Treat, Scott and Wes talk about updating web apps that have running for a long time — the problems to look out for and how to avoid them.

LogRocket - Sponsor

LogRocket lets you replay what users do on your site, helping you reproduce bugs and fix issues faster. It’s an exception tracker, a session re-player and a performance monitor. Get 14 days free at logrocket.com/syntax.

Show Notes

01:54 - The problem

  • This only affects the client-side

05:28 - What are some solutions:

  • Do nothing and hope the user refreshes.
  • Have a list of assets, or commit hashes. Poll the server periodically, and when there is a new version available:
    • Prompt the user to refresh
    • Just refresh the user (store current state in localstorage and restore)
  • Do a custom component, that checks the last time the user has refreshed (or if new version if available). When they click the link, render a regular instead of a pushstate link.
  • Use a service worker. They will emit an event when a new version is available. Use the above methods to refresh the user.
  • Hot code push.
    • Vuepress has “hot reloading” baked in.
Links Tweet us your tasty treats!

Episode source