Releases: apache/dubbo-go
Releases · apache/dubbo-go
v3.2.0-rc1
Features
- Introduce brand new programming API.
- Upgraded triple protocol, 100% compatible with gRPC while supporting direct HTTP API access with
application/json
payload. - RPC service definition supports both IDL and NON-IDL.
- Observability enhancement, metrics & tracing
- Introduce weighted round-robin and alias-method load-balance strategies
Interoperability With Java
This version guarantees fully interoperability between dubbo go and java implementations, below are some interop examples:
- Example demonstrating
dubbo + hesian
interop - Example demonstrating
triple + protobuf
interop - Example demonstrating
triple + non-protobuf
interop - Example demonstrating
service discovery
interop
Compatibility
This version is completely compatible with 3.0.x ~ 3.1.x versions. Users using old API and triple protocol can upgrade to this version directly without changing any code.
New Contributors
- @Axkea made their first contribution in #2393
- @L2ncE made their first contribution in #2421
- @Jafeyyu made their first contribution in #2552
- @shikharish made their first contribution in #2573
- @klboke made their first contribution in #2579
- @setcy made their first contribution in #2596
- @NX-Official made their first contribution in #2606
protoc-gen-go-triple v3.0.0
cmd/protoc-gen-go-triple/v3.0.0 protoc 3.0.0 first release
v3.1.1
Bugfixes
- Fix metrics path set in config does not work, #2553
- Fix retry time calculation, #2550
- Fix nacos App Metadata not compatible with that in dubbo-java, #2563
- Fix router warn log, #2559
- Change timeout of DubboInvoker from Milliseconds to Nanoseconds, #2546
- Set default application name to
dubbo.io
if it's empty, #2572 - Service discovery always try to resue protocol port to avoid listening on too many ports, #2548
v3.1.1-rc1
Features
- Wrapper sliding window with custom aggregator
- Wrapper sliding window with custom counter for caculating QPS
- Add some metrics
- Add registry metrics
- Add metadata rt metrics
- Add medata and config center metrics
- Introduce metrics bus
- Add metrics base api interface
- Implement meta cache
- Add prometheus pushgateway support
- Add switch for metric collector
- Add rpc exception metrics
BugFixes
- Cache manager test
- Fix an issue that random ports can't be assgined
- Fix variable name typo
- Fix registry primitiveURL
- Fix health.proto has name conflict with the one in google.golang.org/grpc
- Rename 'one' to 'cacheOnce'
- Fix config random port
- Fix ConsumerConfig nil pointer problem
- Limit header size to avoid unexpected OOM
- Fix zookeeper and nacos issues working as registry, metadata and configcenter
- Fix service discovery subscription
Enhancements
- Make rt metric more performance and easy to use
- Migrate old RT metric impl to new RT impl
- Nacos support subscribe to all with '*'
- Optimize the integration of otel tracing
- Add fmt make task
- Rewrite RPC metrics into the event pattern
- Change metric config to url like other module
- Simplify configuration when enable metrics
- Remove redundant nil check in Init
- Improve cache init time and add application name
- Zk registry support customize 'rootPath'
- Refactor metrics config
- Improve tag and configurator rules to keep up with official site
v3.1.0
Breaking Changes
For users upgrading from 3.0.x or below, please notice that the default service discovery model in 3.1.0 has changed to registry-type: instance
, which stands for the application-level discovery model in Dubbo3.
To be able to discover instances of lower version, please set registry-type
of 3.1.0 instance to interface
in via dubbogo.yml or API:
dubbo:
registries:
zk:
protocol: zookeeper
address: 127.0.0.1:2181
registry-type: interface
Features
- Implement RemoveConfig API for nacos and zookeeper
- Expose TLSConfig for config api
- Add subscribe any value
- Implement condition routing basic functions and complete related tests
- Implement dynamic routing
- Tag route static config
- Upgrade nacos 2.x
- Print logs of registered providers and consumers
- Add request processing total and request succeed total metrics
- Add some metrics about RT
- Add metrics base api interface
- Sliding window and rt quantile metrics
Bugfixes
- Fix: Call Java provider occur error use group+version on triple protocol
- Fix: Register instance protocol info to polaris when use Tripe
- Fix: Custom triple server message size
- Fix: Start a new routine when subscribing
- Fix: Upgrade hessian2 to fix java wrapper object decoding bug
- Fix: Polaris service discovery cause nil panic
- Fix: The metadata invoker is destroyed too early
- Fix: Format imports in metrics module
- Fix: Solve config bool field zero value bug by using pointer
- Fix: Disable metrics filter by default instead
Enhancements
- Add serviceMappingListener for application service discovery
- The argument to ioutil.ReadFile in the config.WithPath method is changed to conf.path
- Upgrade hessian2 to support java wrapper types
- Tablewrite cli show
- Refactor: remove providers and add prefix when use polaris
- Log configuration supports other frameworks and can configure log file generation directory and file size
- Ignore node not exist error message and continue retry
- Refactor: Split metrics module into multiple files
- Ignore zk node already exist when store provider/consumer metadata
- Try update value if node already exists
- Refactor: Use promauto and promhttp
- Chore: Unnecessary use of fmt.Sprintf
- Chore: Pkg imported more than once
v3.0.5
Bugfixes
- Fix: Consumers try to reconnect to the metadata service of offline providers infinitely
- Fix: Service discovery registry notify before return
- Fix: Do not launch Polaris governance capability if Polaris is not enabled
- Fix: Config of metrics enbale not works
- Fix: Replace assignment behavior with copy operation to avoid OOM
v3.0.5-rc1
Bugfixes
- Fix: Consumers try to reconnect to the metadata service of offline providers infinitely
- Fix: Service discovery registry notify before return
- Fix: Do not launch Polaris governance capability if Polaris is not enabled
- Fix: Config of metrics enbale not works
- Fix: Replace assignment behavior with copy operation to avoid OOM
v3.0.4
Features
- CLI: Support getting metadata from metadataCenter
- Support TLS for gRPC protocols
- Support TLS for Dubbo/Triple protocols
- Support Polaris subscribe
- Support Polaris ratelimit
- Support polaris router ability
Bugfixes
- Fix: leastactive choose wrong invoker
- Fix: add more setter of ReferenceConfigBuilder
- Fix: timeout don't support ms bug
- Fix: env DUBBO_IP_TO_REGISTRY doesn't work
Enhancements
v3.0.4-rc1
Release Notes
3.0.4
Features
- CLI: Support getting metadata from metadataCenter
- Support TLS for gRPC protocols
- Support TLS for Dubbo/Triple protocols
- Support Polaris subscribe
- Support Polaris ratelimit
- Support polaris router ability
Bugfixes
- Fix: leastactive choose wrong invoker
- Fix: add more setter of ReferenceConfigBuilder
- Fix: timeout don't support ms bug
- Fix: env DUBBO_IP_TO_REGISTRY doesn't work