Our Notebooks integration, initially an experiment, became a core part of our Portal experience due to its exponential growth. Complaints about slow load times were common, especially from those far from our infrastructure. Surprisingly, note that we managed to reduce load times to less than a second in some cases. We had to optimize the three main stages of loading a notebook: allocating a container, loading the UI, and rendering the notebook contents. By serving the extension UI separately from the server, we were able to speed up the process. We then decoupled the Jupyter Server from the UI and mocked static requests to significantly improve load times.
https://www.singlestore.com/blog/how-we-made-notebooks-load-10-times-faster/