{"id":23454,"date":"2024-08-07T00:12:32","date_gmt":"2024-08-06T22:12:32","guid":{"rendered":"https:\/\/www.nycwebdesign.eu\/webdesign\/spring-boot-cds-e-virtual-thread-per-java\/"},"modified":"2024-08-07T00:12:32","modified_gmt":"2024-08-06T22:12:32","slug":"spring-boot-cds-e-virtual-thread-per-java","status":"publish","type":"post","link":"https:\/\/www.nycwebdesign.eu\/webdesign\/spring-boot-cds-e-virtual-thread-per-java\/","title":{"rendered":"Spring Boot: CDS e Virtual thread per Java"},"content":{"rendered":"<p> <br \/>\n<\/p>\n<div>\n<p>Da qualche settimana <strong>Spring Boot<\/strong>, il framework <strong>Java<\/strong> che facilita la creazione di applicazioni con Spring, \u00e8 disponibile nella versione 3.3, mentre la 3.4 \u00e8 attualmente fase di preview. Realizzata dagli sviluppatori di VMware che hanno concluso i lavori per la sua implementazione a maggio 2024, questo aggiornamento ha portato con s\u00e9 nuove funzionalit\u00e0, prestazioni pi\u00f9 elevate rispetto al passato e maggiore sicurezza. L&#8217;ultima minor release scaricabile \u00e8 la 3.3.2 che risale allo scorso luglio.<\/p>\n<h2 id=\"spring-boot-e-cds-per-la-programmazione-java\">Spring Boot e CDS per la programmazione Java<\/h2>\n<p>Tra le novit\u00e0 pi\u00f9 interessanti di questo rilascio troviamo <strong>CDS<\/strong> (<em>Class Data Sharing<\/em>), una soluzione JVM (<em>Java Virtual Machine<\/em>) che dovrebbe garantire tempi di avvio pi\u00f9 brevi e un utilizzo pi\u00f9 contenuto della memoria. Per gli sviluppatori <a href=\"https:\/\/www.html.it\/guide\/guida-java\/\" target=\"_blank\" rel=\"noopener\">Java<\/a> si tratta di una &#8220;vecchia conoscenza&#8221; in quanto venne integrata in Spring gi\u00e0 verso la fine dello scorso anno. <\/p>\n<p>Grazie ad essa le classi possono essere collocate in un drive condiviso e i metadati di classe diventano disponibili per processi differenti. Quando pi\u00f9 JVM condividono il medesimo <strong>archivio JAR<\/strong> il consumo di memoria viene ridotto. I tempi di risposta del sistema si fanno quindi pi\u00f9 rapidi.<\/p>\n<h2 id=\"virtual-thread-per-i-websocket\">Virtual thread per i websocket<\/h2>\n<p>Un&#8217;altra funzionalit\u00e0 utile \u00e8 il supporto dei <strong>virtual thread per i websocket<\/strong>, pensato anch&#8217;esso per la massimizzazione delle performance. La prima preview di questa funzionalit\u00e0 risale a Java 19. Il suo scopo principale \u00e8 quello di rendere ancora pi\u00f9 efficiente l&#8217;esecuzione di task concorrenti. I virtual Thread permettono di scalare le applicazioni anche quando devono essere eseguiti pi\u00f9 processi simultaneamente. Essendo gestiti direttamente a livello di JVM, e quindi non dal sistema operativo ospitante, consentono una gestione migliore delle risorse e riducono l&#8217;overhead che viene generato dai thread.<\/p>\n<p>Un&#8217;altra feature degna di nota \u00e8 l&#8217;annotation <code>@BatchTransactionManager<\/code> per l&#8217;auto-configurazione di <strong>Spring Batch<\/strong>. Ad essa si aggiungono il supporto SNI (<em>Server Name Indication<\/em>) per <a href=\"https:\/\/www.html.it\/guide\/guida-a-https-e-ssl\/\" target=\"_blank\" rel=\"noopener\">SSL<\/a>. Vi \u00e8 inoltre la possibilit\u00e0 di caricare alcune risorse, come per esempio i certificati SSL, direttamente dai file di configurazione. Per far questo basta far riferimento ad esso utilizzando valori codificati in Base64.<\/p>\n<p><span class=\"bm_post\" style=\"display:none\" data-domain=\"html.it\" data-author=\"Claudio Garau\" data-alias=\"Claudio Garau\" data-tipologia=\"edit\" data-custom=\"\" data-po=\"\" data-path=\"https:\/\/www.html.it\/magazine\/spring-boot-cds-e-virtual-thread-per-java\/\" data-postid=\"515328\" data-programs=\"\" data-subjects=\"\" data-themes=\"\"\/>    <\/p>\n<div class=\"partial-newsletter\">\n<p>        <!-- newsletter first step --><\/p>\n<div id=\"newsletter_div\" class=\"bro--disabled newsletter__pass-a\">\n<p>Se vuoi aggiornamenti su su questo argomento  inserisci la tua email nel box qui sotto:<\/p>\n<p> <!-- <em>Spring Boot: CDS e Virtual thread per Java<\/em> --><\/p>\n<div class=\"newsletter__disclaimer\">\n<p>Compilando il presente form acconsento a ricevere le informazioni<br \/>\n                    relative ai servizi di cui alla presente pagina ai sensi<br \/>\n                    dell&#8217;<a href=\"https:\/\/www.html.it\/privacy-policy\" target=\"_blank\" rel=\"noopener\">informativa sulla privacy<\/a>.<\/p>\n<\/div><\/div>\n<p>        <!-- newsletter second step --><\/p>\n<p>        <!-- newsletter loader --><\/p>\n<p>        <!-- newsletter notice --><\/p><\/div><\/div>\n<p><br \/>\n<br \/><a href=\"https:\/\/www.html.it\/magazine\/spring-boot-cds-e-virtual-thread-per-java\/\">Source link <\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Da qualche settimana Spring Boot, il framework Java che facilita la creazione di applicazioni con Spring, \u00e8 disponibile nella versione 3.3, mentre la 3.4 \u00e8 attualmente fase di preview. Realizzata dagli sviluppatori di VMware che hanno concluso i lavori per la sua implementazione a maggio 2024, questo aggiornamento ha portato con s\u00e9 nuove funzionalit\u00e0, prestazioni&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_s2mail":""},"categories":[37],"tags":[],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v19.13 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Spring Boot: CDS e Virtual thread per Java - AGENZIA WEB Italia<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.nycwebdesign.eu\/webdesign\/spring-boot-cds-e-virtual-thread-per-java\/\" \/>\n<meta property=\"og:locale\" content=\"it_IT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Spring Boot: CDS e Virtual thread per Java - AGENZIA WEB Italia\" \/>\n<meta property=\"og:description\" content=\"Da qualche settimana Spring Boot, il framework Java che facilita la creazione di applicazioni con Spring, \u00e8 disponibile nella versione 3.3, mentre la 3.4 \u00e8 attualmente fase di preview. Realizzata dagli sviluppatori di VMware che hanno concluso i lavori per la sua implementazione a maggio 2024, questo aggiornamento ha portato con s\u00e9 nuove funzionalit\u00e0, prestazioni...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.nycwebdesign.eu\/webdesign\/spring-boot-cds-e-virtual-thread-per-java\/\" \/>\n<meta property=\"og:site_name\" content=\"AGENZIA WEB Italia\" \/>\n<meta property=\"article:published_time\" content=\"2024-08-06T22:12:32+00:00\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Scritto da\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo di lettura stimato\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minuti\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/spring-boot-cds-e-virtual-thread-per-java\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/spring-boot-cds-e-virtual-thread-per-java\/\"},\"author\":{\"name\":\"admin\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/person\/c0748e23499fac2fd73b79d1379fdf42\"},\"headline\":\"Spring Boot: CDS e Virtual thread per Java\",\"datePublished\":\"2024-08-06T22:12:32+00:00\",\"dateModified\":\"2024-08-06T22:12:32+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/spring-boot-cds-e-virtual-thread-per-java\/\"},\"wordCount\":374,\"publisher\":{\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#organization\"},\"articleSection\":[\"News\"],\"inLanguage\":\"it-IT\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/spring-boot-cds-e-virtual-thread-per-java\/\",\"url\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/spring-boot-cds-e-virtual-thread-per-java\/\",\"name\":\"Spring Boot: CDS e Virtual thread per Java - AGENZIA WEB Italia\",\"isPartOf\":{\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#website\"},\"datePublished\":\"2024-08-06T22:12:32+00:00\",\"dateModified\":\"2024-08-06T22:12:32+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/spring-boot-cds-e-virtual-thread-per-java\/#breadcrumb\"},\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.nycwebdesign.eu\/webdesign\/spring-boot-cds-e-virtual-thread-per-java\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/spring-boot-cds-e-virtual-thread-per-java\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Spring Boot: CDS e Virtual thread per Java\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#website\",\"url\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/\",\"name\":\"AGENZIA WEB Italia\",\"description\":\"Web design Web agency Italia\",\"publisher\":{\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"it-IT\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#organization\",\"name\":\"Multimedia Web\",\"url\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-content\/uploads\/2016\/05\/multimediaweb1.png\",\"contentUrl\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-content\/uploads\/2016\/05\/multimediaweb1.png\",\"width\":200,\"height\":57,\"caption\":\"Multimedia Web\"},\"image\":{\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/person\/c0748e23499fac2fd73b79d1379fdf42\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/991cd68bbfd6f946517378a63fc3a1f7?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/991cd68bbfd6f946517378a63fc3a1f7?s=96&d=mm&r=g\",\"caption\":\"admin\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Spring Boot: CDS e Virtual thread per Java - AGENZIA WEB Italia","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.nycwebdesign.eu\/webdesign\/spring-boot-cds-e-virtual-thread-per-java\/","og_locale":"it_IT","og_type":"article","og_title":"Spring Boot: CDS e Virtual thread per Java - AGENZIA WEB Italia","og_description":"Da qualche settimana Spring Boot, il framework Java che facilita la creazione di applicazioni con Spring, \u00e8 disponibile nella versione 3.3, mentre la 3.4 \u00e8 attualmente fase di preview. Realizzata dagli sviluppatori di VMware che hanno concluso i lavori per la sua implementazione a maggio 2024, questo aggiornamento ha portato con s\u00e9 nuove funzionalit\u00e0, prestazioni...","og_url":"https:\/\/www.nycwebdesign.eu\/webdesign\/spring-boot-cds-e-virtual-thread-per-java\/","og_site_name":"AGENZIA WEB Italia","article_published_time":"2024-08-06T22:12:32+00:00","author":"admin","twitter_card":"summary_large_image","twitter_misc":{"Scritto da":"admin","Tempo di lettura stimato":"2 minuti"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/spring-boot-cds-e-virtual-thread-per-java\/#article","isPartOf":{"@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/spring-boot-cds-e-virtual-thread-per-java\/"},"author":{"name":"admin","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/person\/c0748e23499fac2fd73b79d1379fdf42"},"headline":"Spring Boot: CDS e Virtual thread per Java","datePublished":"2024-08-06T22:12:32+00:00","dateModified":"2024-08-06T22:12:32+00:00","mainEntityOfPage":{"@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/spring-boot-cds-e-virtual-thread-per-java\/"},"wordCount":374,"publisher":{"@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#organization"},"articleSection":["News"],"inLanguage":"it-IT"},{"@type":"WebPage","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/spring-boot-cds-e-virtual-thread-per-java\/","url":"https:\/\/www.nycwebdesign.eu\/webdesign\/spring-boot-cds-e-virtual-thread-per-java\/","name":"Spring Boot: CDS e Virtual thread per Java - AGENZIA WEB Italia","isPartOf":{"@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#website"},"datePublished":"2024-08-06T22:12:32+00:00","dateModified":"2024-08-06T22:12:32+00:00","breadcrumb":{"@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/spring-boot-cds-e-virtual-thread-per-java\/#breadcrumb"},"inLanguage":"it-IT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.nycwebdesign.eu\/webdesign\/spring-boot-cds-e-virtual-thread-per-java\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/spring-boot-cds-e-virtual-thread-per-java\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.nycwebdesign.eu\/webdesign\/"},{"@type":"ListItem","position":2,"name":"Spring Boot: CDS e Virtual thread per Java"}]},{"@type":"WebSite","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#website","url":"https:\/\/www.nycwebdesign.eu\/webdesign\/","name":"AGENZIA WEB Italia","description":"Web design Web agency Italia","publisher":{"@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.nycwebdesign.eu\/webdesign\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"it-IT"},{"@type":"Organization","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#organization","name":"Multimedia Web","url":"https:\/\/www.nycwebdesign.eu\/webdesign\/","logo":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/logo\/image\/","url":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-content\/uploads\/2016\/05\/multimediaweb1.png","contentUrl":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-content\/uploads\/2016\/05\/multimediaweb1.png","width":200,"height":57,"caption":"Multimedia Web"},"image":{"@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/person\/c0748e23499fac2fd73b79d1379fdf42","name":"admin","image":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/991cd68bbfd6f946517378a63fc3a1f7?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/991cd68bbfd6f946517378a63fc3a1f7?s=96&d=mm&r=g","caption":"admin"}}]}},"_links":{"self":[{"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/posts\/23454"}],"collection":[{"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/comments?post=23454"}],"version-history":[{"count":0,"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/posts\/23454\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/media?parent=23454"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/categories?post=23454"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/tags?post=23454"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}