Abstract
Progressive server-side rendering (PSSR) enhances the user experience by optimizing the first contentful paint and supporting incremental rendering as data becomes available. However, constructing web templates for asynchronous data models introduces complexity due to undesired interleaving between data access completion and template processing, potentially resulting in malformed HTML. Existing asynchronous programming idioms, such as async/await or suspending functions, enable developers to create code with a synchronous appearance while maintaining non-blocking progress. In this work, we introduce the first proposal for server-side rendering (SSR) web templates that seamlessly support the async/await pattern. Our proposal addresses the challenges associated with building SSR web templates for asynchronous data models, ensuring the production of well-formed HTML documents and preserving the capability of PSSR.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Atwood, J.: The lost art of progressive html rendering. Tech. rep. (2005). https://blog.codinghorror.com/the-lost-art-of-progressive-html-rendering/
Carvalho, F.M., Fialho, P.: Enhancing SSR in low-thread web servers: a comprehensive approach for progressive server-side rendering with any asynchronous API and multiple data models. In: Proceedings of the 19th International Conference on Web Information Systems and Technologies (WEBIST 2023) (2023)
Edgar, M.: Speed Metrics Guide. Springer (2024)
Elizarov, R., Belyaev, M., Akhin, M., Usmanov, I.: Kotlin coroutines: design and implementation. In: Proceedings of the 2021 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software, pp. 68–84 (2021)
Elmeleegy, K., Chanda, A., Cox, A.L., Zwaenepoel, W.: Lazy asynchronous i/o for event-driven servers. In: Proceedings of the Annual Conference on USENIX Annual Technical Conference (ATEC 2004), p. 21. USENIX Association (2004)
Farago, J., Williams, H., Walsh, J., Whyte, N., Goel, K., Fung, P.: Object search UI and dragging object results, US Patent App. 11/353,787 (2007)
Friedman, W.: Aspects of applicative programming for parallel processing. IEEE Trans. Comput. C-27(4), 289–296 (1978)
Hallie, L., Osmani, A.: Learning patterns: patterns for building powerful web apps with vanilla JavaScript and React. Patterns. Dev (2021)
Kambona, K., Boix, E.G., De Meuter, W.: An evaluation of reactive programming and promises for structuring collaborative web applications. In: Proceedings of the 7th Workshop on Dynamic Languages and Applications (DYLA 2013), New York (2013). https://doi.org/10.1145/2489798.2489802
Karsten, M., Barghi, S.: User-level threading: have your cake and eat it too. Proc. ACM Meas. Anal. Comput. Syst. 4(1), 1–30 (2020)
Meijer, E.: Democratizing the cloud with the .net reactive framework RX. In: Francisco, Q.S. (ed.) International Software Development Conference (2009)
Meijer, E.: Your mouse is a database. Queue 10(3), 20:20–20:33 (2012)
Netflix, Pivotal, Red Hat, Oracle, Twitter, Lightbend: reactive streams specification. Tech. rep. (2015). https://www.reactive-streams.org/
Rechkunov, D.: Progressive rendering - how to make your app render sooner. Tech. rep. (2016). https://2016.jsconf.is/speakers/denis-rechkunov/
Schiller, S.: Progressive loading. US Patent App. 11/364,992 (2007)
Syme, D., Petricek, T., Lomov, D.: The f# asynchronous programming model. In: Rocha, R., Launchbury, J. (eds.) Practical Aspects of Declarative Languages, pp. 175–189. Springer, Heidelberg (2011)
Vogel, L., Springer, T.: User acceptance of modified web page loading based on progressive streaming. In: International Conference on Web Engineering, pp. 391–405. Springer (2022)
Von Behren, R., Condit, J., Brewer, E.: Why events are a bad idea (for \(\{\)High-Concurrency\(\}\) servers). In: 9th Workshop on Hot Topics in Operating Systems (HotOS IX) (2003)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2025 The Author(s), under exclusive license to Springer Nature Singapore Pte Ltd.
About this paper
Cite this paper
Carvalho, F.M. (2025). Progressive Server-Side Rendering with Suspendable Web Templates. In: Barhamgi, M., Wang, H., Wang, X. (eds) Web Information Systems Engineering – WISE 2024. WISE 2024. Lecture Notes in Computer Science, vol 15440. Springer, Singapore. https://doi.org/10.1007/978-981-96-0576-7_33
Download citation
DOI: https://doi.org/10.1007/978-981-96-0576-7_33
Published:
Publisher Name: Springer, Singapore
Print ISBN: 978-981-96-0575-0
Online ISBN: 978-981-96-0576-7
eBook Packages: Computer ScienceComputer Science (R0)