[go: up one dir, main page]

Skip to main content

Progressive Server-Side Rendering with Suspendable Web Templates

  • Conference paper
  • First Online:
Web Information Systems Engineering – WISE 2024 (WISE 2024)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 15440))

Included in the following conference series:

  • 261 Accesses

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 64.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 79.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Similar content being viewed by others

Notes

  1. 1.

    https://htmlflow.org.

  2. 2.

    https://markojs.com/.

  3. 3.

    https://turbo.hotwired.dev/.

  4. 4.

    https://github.com/xmlet/spring-webflux-comparing-template-engines.

References

  1. Atwood, J.: The lost art of progressive html rendering. Tech. rep. (2005). https://blog.codinghorror.com/the-lost-art-of-progressive-html-rendering/

  2. 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)

    Google Scholar 

  3. Edgar, M.: Speed Metrics Guide. Springer (2024)

    Google Scholar 

  4. 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)

    Google Scholar 

  5. 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)

    Google Scholar 

  6. 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)

    Google Scholar 

  7. Friedman, W.: Aspects of applicative programming for parallel processing. IEEE Trans. Comput. C-27(4), 289–296 (1978)

    Google Scholar 

  8. Hallie, L., Osmani, A.: Learning patterns: patterns for building powerful web apps with vanilla JavaScript and React. Patterns. Dev (2021)

    Google Scholar 

  9. 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

  10. 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)

    Google Scholar 

  11. Meijer, E.: Democratizing the cloud with the .net reactive framework RX. In: Francisco, Q.S. (ed.) International Software Development Conference (2009)

    Google Scholar 

  12. Meijer, E.: Your mouse is a database. Queue 10(3), 20:20–20:33 (2012)

    Google Scholar 

  13. Netflix, Pivotal, Red Hat, Oracle, Twitter, Lightbend: reactive streams specification. Tech. rep. (2015). https://www.reactive-streams.org/

  14. Rechkunov, D.: Progressive rendering - how to make your app render sooner. Tech. rep. (2016). https://2016.jsconf.is/speakers/denis-rechkunov/

  15. Schiller, S.: Progressive loading. US Patent App. 11/364,992 (2007)

    Google Scholar 

  16. 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)

    Chapter  Google Scholar 

  17. 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)

    Google Scholar 

  18. 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)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Fernando Miguel Carvalho .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2025 The Author(s), under exclusive license to Springer Nature Singapore Pte Ltd.

About this paper

Check for updates. Verify currency and authenticity via CrossMark

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)

Publish with us

Policies and ethics