<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Changelog on Apache Dubbo</title><link>https://deploy-preview-3203--dubbo.netlify.app/en/overview/mannual/java-sdk/reference-manual/upgrades-and-compatibility/version/</link><description>Recent content in Changelog on Apache Dubbo</description><generator>Hugo</generator><language>en</language><atom:link href="https://deploy-preview-3203--dubbo.netlify.app/en/overview/mannual/java-sdk/reference-manual/upgrades-and-compatibility/version/index.xml" rel="self" type="application/rss+xml"/><item><title>Upgrade from 2.x to 3.x</title><link>https://deploy-preview-3203--dubbo.netlify.app/en/overview/mannual/java-sdk/reference-manual/upgrades-and-compatibility/version/2.x-to-3.x-compatibility-guide/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://deploy-preview-3203--dubbo.netlify.app/en/overview/mannual/java-sdk/reference-manual/upgrades-and-compatibility/version/2.x-to-3.x-compatibility-guide/</guid><description>&lt;h2 id="benefits-of-upgrading-to-dubbo-3x">Benefits of Upgrading to Dubbo 3.X&lt;/h2>
&lt;p>Dubbo 3 maintains the classic architecture of 2.x, focusing on inter-process communication for microservices and providing rich service governance capabilities (such as address discovery, traffic management, etc.) to better manage microservice clusters. The upgrade of Dubbo3 comprehensively enhances stability, performance, scalability, and usability throughout core Dubbo features.&lt;/p>
&lt;p>&lt;img alt="architecture-1" src="https://deploy-preview-3203--dubbo.netlify.app/imgs/v3/concepts/architecture-1.png">&lt;/p>
&lt;ul>
&lt;li>&lt;strong>Universal communication protocol.&lt;/strong> The new RPC protocol discards proprietary protocol stacks in favor of the more universal HTTP/2, leveraging the standardized features of the HTTP protocol to address issues like traffic generality and penetration, better adapting to scenarios like front-end and back-end interfacing and gateway proxies; it supports Stream communication modes, achieving greater throughput for clusters while meeting different business communication model demands.&lt;/li>
&lt;li>&lt;strong>Highly scalable for millions of cluster instances.&lt;/strong> With the promotion of microservice practices, the scale of microservice cluster instances is constantly expanding, benefiting from the lightweight nature and horizontal scalability of microservices, but also placing a burden on overall cluster capacity, especially for centralized service governance components; Dubbo 3 needs to address resource bottleneck issues arising from instance scale expansion, achieving truly infinite horizontal scalability.&lt;/li>
&lt;li>&lt;strong>Full embrace of cloud-native.&lt;/strong>&lt;/li>
&lt;/ul>
&lt;h2 id="new-features-in-dubbo-30">New Features in Dubbo 3.0&lt;/h2>
&lt;p>New features in Dubbo 3.0 include:&lt;/p></description></item><item><title>Upgrade from 3.0 to 3.1</title><link>https://deploy-preview-3203--dubbo.netlify.app/en/overview/mannual/java-sdk/reference-manual/upgrades-and-compatibility/version/3.0-to-3.1-compatibility-guide/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://deploy-preview-3203--dubbo.netlify.app/en/overview/mannual/java-sdk/reference-manual/upgrades-and-compatibility/version/3.0-to-3.1-compatibility-guide/</guid><description>&lt;h2 id="function-modification-points">Function Modification Points&lt;/h2>
&lt;h3 id="1-nacos-group-alignment-application-level-service-discovery">1. Nacos Group Alignment (Application-level Service Discovery)&lt;/h3>
&lt;p>In Dubbo 2.7.x, the group value configured in the Nacos Registry URL aligns with the group grouping in the Nacos Registry. (group can be considered similar to a namespace for soft isolation)&lt;/p>
&lt;p>In Dubbo 3.0.x, the group configured in the Nacos Registry URL is not used by default, and DEFAULT_GROUP is used instead. (group no longer provides isolation functionality)&lt;/p>
&lt;p>In Dubbo 3.1.x, the group value configured in the Nacos Registry URL will be realigned with the group grouping in the Nacos Registry.&lt;/p></description></item><item><title>Upgrade from 3.1 to 3.2</title><link>https://deploy-preview-3203--dubbo.netlify.app/en/overview/mannual/java-sdk/reference-manual/upgrades-and-compatibility/version/3.1-to-3.2-compatibility-guide/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://deploy-preview-3203--dubbo.netlify.app/en/overview/mannual/java-sdk/reference-manual/upgrades-and-compatibility/version/3.1-to-3.2-compatibility-guide/</guid><description>&lt;p>For the vast majority of users, upgrading to Dubbo 3.2.0 is completely smooth, requiring only changes to the dependency version.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-xml" data-lang="xml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#268bd2">&amp;lt;dependency&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">&amp;lt;groupId&amp;gt;&lt;/span>org.apache.dubbo&lt;span style="color:#268bd2">&amp;lt;/groupId&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">&amp;lt;artifactId&amp;gt;&lt;/span>dubbo&lt;span style="color:#268bd2">&amp;lt;/artifactId&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">&amp;lt;version&amp;gt;&lt;/span>3.2.0&lt;span style="color:#268bd2">&amp;lt;/version&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#268bd2">&amp;lt;/dependency&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Or&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-xml" data-lang="xml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#268bd2">&amp;lt;dependency&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">&amp;lt;groupId&amp;gt;&lt;/span>org.apache.dubbo&lt;span style="color:#268bd2">&amp;lt;/groupId&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">&amp;lt;artifactId&amp;gt;&lt;/span>dubbo-spring-boot-starter&lt;span style="color:#268bd2">&amp;lt;/artifactId&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">&amp;lt;version&amp;gt;&lt;/span>3.2.0&lt;span style="color:#268bd2">&amp;lt;/version&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#268bd2">&amp;lt;/dependency&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h1 id="compatibility-checklist">Compatibility CheckList&lt;/h1>
&lt;h2 id="1-serialization-check-mode-important">1. Serialization Check Mode (Important!!!)&lt;/h2>
&lt;p>In Dubbo 3.2.0, Dubbo will enable strong validation of the serialization whitelist by default to improve security and avoid remote command execution issues. For users with large service scales or those using generics, we recommend adding the configuration &lt;code>-Ddubbo.application.serialize-check-status=WARN&lt;/code>. After monitoring for a while (via logs, QoS commands), if no security warnings are triggered, strong validation mode can be configured.&lt;/p></description></item><item><title>Upgrade from 3.2 to 3.3</title><link>https://deploy-preview-3203--dubbo.netlify.app/en/overview/mannual/java-sdk/reference-manual/upgrades-and-compatibility/version/3.2-to-3.3-compatibility-guide/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://deploy-preview-3203--dubbo.netlify.app/en/overview/mannual/java-sdk/reference-manual/upgrades-and-compatibility/version/3.2-to-3.3-compatibility-guide/</guid><description>&lt;p>For the vast majority of users, upgrading to Dubbo 3.3.0 is completely smooth, requiring only a change in the dependency version.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-xml" data-lang="xml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#268bd2">&amp;lt;dependency&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">&amp;lt;groupId&amp;gt;&lt;/span>org.apache.dubbo&lt;span style="color:#268bd2">&amp;lt;/groupId&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">&amp;lt;artifactId&amp;gt;&lt;/span>dubbo&lt;span style="color:#268bd2">&amp;lt;/artifactId&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">&amp;lt;version&amp;gt;&lt;/span>3.3.0&lt;span style="color:#268bd2">&amp;lt;/version&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#268bd2">&amp;lt;/dependency&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>or&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-xml" data-lang="xml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#268bd2">&amp;lt;dependency&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">&amp;lt;groupId&amp;gt;&lt;/span>org.apache.dubbo&lt;span style="color:#268bd2">&amp;lt;/groupId&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">&amp;lt;artifactId&amp;gt;&lt;/span>dubbo-spring-boot-starter&lt;span style="color:#268bd2">&amp;lt;/artifactId&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">&amp;lt;version&amp;gt;&lt;/span>3.3.0&lt;span style="color:#268bd2">&amp;lt;/version&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#268bd2">&amp;lt;/dependency&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h1 id="compatibility-checklist">Compatibility Checklist&lt;/h1>
&lt;h2 id="1-default-serialization-switch">1. Default Serialization Switch&lt;/h2>
&lt;p>Starting with Dubbo 3.3.0, the default serialization method changes from &lt;code>fastjson2&lt;/code> to &lt;code>hessian2&lt;/code>. For applications upgrading to 3.3.0, Dubbo will automatically attempt to use &lt;code>hessian2&lt;/code> for serialization.&lt;/p>
&lt;h3 id="q1-why-switch-the-default-serialization-method">Q1: Why switch the default serialization method?&lt;/h3>
&lt;p>&lt;code>hessian2&lt;/code> was the default serialization in Dubbo versions 3.1.x and below, proven stable and compatible in long-term production. After evaluating backward compatibility and long-term maintainability, the Dubbo team decided to upgrade &lt;code>hessian-lite&lt;/code> to the latest &lt;code>hessian4&lt;/code>, supporting JDK17 and JDK21.&lt;/p></description></item></channel></rss>