{"id":"https://openalex.org/W4413175958","doi":"https://doi.org/10.3390/software4030020","title":"Enabling Progressive Server-Side Rendering for Traditional Web Template Engines with Java Virtual Threads","display_name":"Enabling Progressive Server-Side Rendering for Traditional Web Template Engines with Java Virtual Threads","publication_year":2025,"publication_date":"2025-08-13","ids":{"openalex":"https://openalex.org/W4413175958","doi":"https://doi.org/10.3390/software4030020"},"language":"en","primary_location":{"id":"doi:10.3390/software4030020","is_oa":true,"landing_page_url":"https://doi.org/10.3390/software4030020","pdf_url":"https://www.mdpi.com/2674-113X/4/3/20/pdf","source":{"id":"https://openalex.org/S4210183365","display_name":"Software","issn_l":"2674-113X","issn":["2674-113X"],"is_oa":true,"is_in_doaj":true,"is_core":true,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Software","raw_type":"journal-article"},"type":"article","indexed_in":["crossref","doaj"],"open_access":{"is_oa":true,"oa_status":"diamond","oa_url":"https://www.mdpi.com/2674-113X/4/3/20/pdf","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5119292149","display_name":"Bernardo Pereira","orcid":null},"institutions":[{"id":"https://openalex.org/I203847022","display_name":"Instituto Polit\u00e9cnico de Lisboa","ror":"https://ror.org/04ea70f07","country_code":"PT","type":"education","lineage":["https://openalex.org/I203847022"]}],"countries":["PT"],"is_corresponding":false,"raw_author_name":"Bernardo Pereira","raw_affiliation_strings":["Instituto Superior de Engenharia de Lisboa (ISEL), Polytechnical Institute of Lisbon, 1959-007 Lisbon, Portugal"],"affiliations":[{"raw_affiliation_string":"Instituto Superior de Engenharia de Lisboa (ISEL), Polytechnical Institute of Lisbon, 1959-007 Lisbon, Portugal","institution_ids":["https://openalex.org/I203847022"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5068810326","display_name":"Fernando Miguel Carvalho","orcid":"https://orcid.org/0000-0002-4281-3195"},"institutions":[{"id":"https://openalex.org/I203847022","display_name":"Instituto Polit\u00e9cnico de Lisboa","ror":"https://ror.org/04ea70f07","country_code":"PT","type":"education","lineage":["https://openalex.org/I203847022"]}],"countries":["PT"],"is_corresponding":true,"raw_author_name":"Fernando Miguel Carvalho","raw_affiliation_strings":["Instituto Superior de Engenharia de Lisboa (ISEL), Polytechnical Institute of Lisbon, 1959-007 Lisbon, Portugal"],"affiliations":[{"raw_affiliation_string":"Instituto Superior de Engenharia de Lisboa (ISEL), Polytechnical Institute of Lisbon, 1959-007 Lisbon, Portugal","institution_ids":["https://openalex.org/I203847022"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5068810326"],"corresponding_institution_ids":["https://openalex.org/I203847022"],"apc_list":null,"apc_paid":null,"fwci":0.0,"has_fulltext":true,"cited_by_count":0,"citation_normalized_percentile":{"value":0.23994337,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":null,"biblio":{"volume":"4","issue":"3","first_page":"20","last_page":"20"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10742","display_name":"Peer-to-Peer Network Technologies","score":0.9990000128746033,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10742","display_name":"Peer-to-Peer Network Technologies","score":0.9990000128746033,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10715","display_name":"Distributed and Parallel Computing Systems","score":0.9983999729156494,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T11181","display_name":"Advanced Data Storage Technologies","score":0.9958999752998352,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8159800171852112},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.7007344365119934},{"id":"https://openalex.org/keywords/rendering","display_name":"Rendering (computer graphics)","score":0.6319929361343384},{"id":"https://openalex.org/keywords/server-side","display_name":"Server-side","score":0.5785276889801025},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.5781328082084656},{"id":"https://openalex.org/keywords/client-side","display_name":"Client-side","score":0.4764412045478821},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.32690465450286865},{"id":"https://openalex.org/keywords/computer-graphics","display_name":"Computer graphics (images)","score":0.2869645357131958}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8159800171852112},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.7007344365119934},{"id":"https://openalex.org/C205711294","wikidata":"https://www.wikidata.org/wiki/Q176953","display_name":"Rendering (computer graphics)","level":2,"score":0.6319929361343384},{"id":"https://openalex.org/C14414571","wikidata":"https://www.wikidata.org/wiki/Q519081","display_name":"Server-side","level":2,"score":0.5785276889801025},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.5781328082084656},{"id":"https://openalex.org/C202477664","wikidata":"https://www.wikidata.org/wiki/Q1352449","display_name":"Client-side","level":2,"score":0.4764412045478821},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.32690465450286865},{"id":"https://openalex.org/C121684516","wikidata":"https://www.wikidata.org/wiki/Q7600677","display_name":"Computer graphics (images)","level":1,"score":0.2869645357131958}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.3390/software4030020","is_oa":true,"landing_page_url":"https://doi.org/10.3390/software4030020","pdf_url":"https://www.mdpi.com/2674-113X/4/3/20/pdf","source":{"id":"https://openalex.org/S4210183365","display_name":"Software","issn_l":"2674-113X","issn":["2674-113X"],"is_oa":true,"is_in_doaj":true,"is_core":true,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Software","raw_type":"journal-article"},{"id":"pmh:oai:doaj.org/article:37326a6dc4054acfbd0a5a99ab4a93bd","is_oa":true,"landing_page_url":"https://doaj.org/article/37326a6dc4054acfbd0a5a99ab4a93bd","pdf_url":null,"source":{"id":"https://openalex.org/S112646816","display_name":"SHILAP Revista de lepidopterolog\u00eda","issn_l":"0300-5267","issn":["0300-5267","2340-4078"],"is_oa":true,"is_in_doaj":true,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Software, Vol 4, Iss 3, p 20 (2025)","raw_type":"article"}],"best_oa_location":{"id":"doi:10.3390/software4030020","is_oa":true,"landing_page_url":"https://doi.org/10.3390/software4030020","pdf_url":"https://www.mdpi.com/2674-113X/4/3/20/pdf","source":{"id":"https://openalex.org/S4210183365","display_name":"Software","issn_l":"2674-113X","issn":["2674-113X"],"is_oa":true,"is_in_doaj":true,"is_core":true,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Software","raw_type":"journal-article"},"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W4413175958.pdf","grobid_xml":"https://content.openalex.org/works/W4413175958.grobid-xml"},"referenced_works_count":30,"referenced_works":["https://openalex.org/W53176000","https://openalex.org/W175992194","https://openalex.org/W2026879022","https://openalex.org/W2032475272","https://openalex.org/W2072607050","https://openalex.org/W2076684951","https://openalex.org/W2123914565","https://openalex.org/W2134112335","https://openalex.org/W2135523252","https://openalex.org/W2141305501","https://openalex.org/W2143183078","https://openalex.org/W2152944474","https://openalex.org/W3083140292","https://openalex.org/W3096076778","https://openalex.org/W3127327396","https://openalex.org/W3205409564","https://openalex.org/W3206328748","https://openalex.org/W4239600812","https://openalex.org/W4250212624","https://openalex.org/W4283643141","https://openalex.org/W4285310205","https://openalex.org/W4382049740","https://openalex.org/W4388860743","https://openalex.org/W4391965583","https://openalex.org/W4402242250","https://openalex.org/W4404725029","https://openalex.org/W6602121429","https://openalex.org/W6618130220","https://openalex.org/W6632996254","https://openalex.org/W6648346012"],"related_works":["https://openalex.org/W4302890120","https://openalex.org/W3005688497","https://openalex.org/W4322735059","https://openalex.org/W4301042531","https://openalex.org/W4403348793","https://openalex.org/W4319448716","https://openalex.org/W2993438822","https://openalex.org/W3003811204","https://openalex.org/W4387881033","https://openalex.org/W3014448854"],"abstract_inverted_index":{"Modern":[0],"web":[1],"applications":[2],"increasingly":[3],"demand":[4],"rendering":[5],"techniques":[6],"that":[7,45,108,132],"optimize":[8],"performance,":[9],"responsiveness,":[10],"and":[11,23,97,102,126],"scalability.":[12],"Progressive":[13],"Server-Side":[14,21],"Rendering":[15,22,25],"(PSSR)":[16],"bridges":[17],"the":[18,75,141,151],"gap":[19],"between":[20],"Client-Side":[24],"by":[26],"progressively":[27],"streaming":[28],"HTML":[29,37,147],"content,":[30],"improving":[31],"perceived":[32],"load":[33],"times.":[34],"Still,":[35],"traditional":[36,78],"template":[38,79],"engines":[39,80,91,113],"often":[40],"rely":[41],"on":[42],"blocking":[43,71,112],"interfaces":[44],"hinder":[46],"their":[47],"use":[48],"in":[49,64],"asynchronous,":[50],"non-blocking":[51,68,121],"contexts":[52],"required":[53],"for":[54,81,120],"PSSR.":[55],"This":[56,130],"paper":[57],"analyzes":[58],"how":[59],"Java":[60,65],"virtual":[61,103,109,133],"threads,":[62],"introduced":[63],"21,":[66],"enable":[67],"execution":[69],"of":[70,77,143],"I/O":[72],"operations,":[73],"allowing":[74],"reuse":[76],"PSSR":[82,144],"without":[83],"complex":[84],"asynchronous":[85],"programming":[86],"models.":[87],"We":[88],"benchmark":[89],"multiple":[90],"across":[92],"Spring":[93,95],"WebFlux,":[94],"MVC,":[96],"Quarkus":[98],"using":[99],"reactive,":[100],"suspendable,":[101],"thread-based":[104],"approaches.":[105],"Results":[106],"show":[107],"threads":[110,134],"allow":[111],"to":[114,117,139,153],"scale":[115],"comparably":[116],"those":[118],"designed":[119],"I/O,":[122],"achieving":[123],"high":[124],"throughput":[125],"responsiveness":[127],"under":[128],"load.":[129],"demonstrates":[131],"provide":[135],"a":[136],"compelling":[137],"path":[138],"simplify":[140],"implementation":[142],"with":[145],"familiar":[146],"templates,":[148],"significantly":[149],"lowering":[150],"barrier":[152],"entry":[154],"while":[155],"maintaining":[156],"performance.":[157]},"counts_by_year":[],"updated_date":"2026-03-09T07:00:12.390032","created_date":"2025-10-10T00:00:00"}
