Split DefaultConfigValidator to SPI implements (#12948)

* * Simplify responsibilities of ConfigValidationUtils

* * Update validators

* * Bug fix

* * Bug fix
* Add ut

* * Add license

* * Rename folder

* * Fix pom & name

* * Code style fix

* * Bug fix

* * Bug fix

* * Update validator init process

* * Refactor ConfigValidateFacade init method

* * Bug fix
* Add license

* * Fix test

* * Fix ut

* * Update ConfigValidateFacade init process

* * Bug fix

* * Bug fix

* * Bug fix

* * Doc fix

* * Bug fix

* * Bug fix

* * Bug fix

* * Bug fix

* * Bug fix

* * Test fix

* * refactor validator mapping

* * Code style fix

* * Fix conflict

* * Fix conflict

* * Remove default instance of ConfigValidateFacade

* * Remove default instance of ConfigValidateFacade

* * Add license
52 files changed
tree: f8ac5bc20526c8919f8a35daf78c42684c5f237c
  1. .github/
  2. .mvn/
  3. codestyle/
  4. dubbo-annotation-processor/
  5. dubbo-build-tools/
  6. dubbo-cluster/
  7. dubbo-common/
  8. dubbo-compatible/
  9. dubbo-compiler/
  10. dubbo-config/
  11. dubbo-configcenter/
  12. dubbo-container/
  13. dubbo-demo/
  14. dubbo-dependencies/
  15. dubbo-dependencies-bom/
  16. dubbo-distribution/
  17. dubbo-filter/
  18. dubbo-kubernetes/
  19. dubbo-maven-plugin/
  20. dubbo-metadata/
  21. dubbo-metrics/
  22. dubbo-monitor/
  23. dubbo-native/
  24. dubbo-plugin/
  25. dubbo-registry/
  26. dubbo-remoting/
  27. dubbo-rpc/
  28. dubbo-serialization/
  29. dubbo-spring-boot/
  30. dubbo-test/
  31. dubbo-xds/
  32. .artifacts
  33. .asf.yaml
  34. .editorconfig
  35. .gitattributes
  36. .gitignore
  37. .licenserc.yaml
  38. CHANGES.md
  39. CODE_OF_CONDUCT.md
  40. codecov.yml
  41. CONTRIBUTING.md
  42. Jenkinsfile
  43. Jenkinsfile.sonar
  44. LICENSE
  45. licenseCheck.sh
  46. mvnw
  47. mvnw.cmd
  48. NOTICE
  49. pom.xml
  50. PULL_REQUEST_TEMPLATE.md
  51. README.md
  52. SECURITY.md
README.md

Apache Dubbo Project

Build and Test For PR Codecov Maven License Average time to resolve an issue Percentage of issues still open Tweet Twitter Follow Gitter

Apache Dubbo is an easy-to-use Web and RPC framework that provides multiple language implementations(Java, Go, Rust, Node.js, Web) for communication, service discovery, traffic management, observability, security, tools, and best practices for building enterprise-ready microservices.

Visit the official website for more information.

Architecture

Architecture

  • Consumer and provider communicate with each other using RPC protocol like triple, tcp, rest, etc.
  • Consumers automatically trace provider instances registered in registries(Zookeeper, Nacos) and distribute traffic among them by following traffic strategies.
  • Rich features for monitoring and managing the cluster with dynamic configuration, metrics, tracing, security, and visualized console.

Getting started

Follow the instructions below to learn how to:

Programming with lightweight RPC API

5 minutes step-by-step guide

Dubbo supports building RPC services with only a few lines of code while depending only on a lightweight SDK (<10MB). The protocol on the wire can be Triple(fully gRPC compatible and HTTP-friendly), Dubbo2(TCP), REST, or any protocol of your choice.

Building a microservice application with Spring Boot

5 minutes step-by-step guide

It's highly recommended to start your microservice application with the Spring Boot Starter dubbo-spring-boot-starter provided by Dubbo. With only a single dependency and yaml file, and optionally a bunch of other useful spring boot starters, you can enable all of the Dubo features like service discovery, observability, tracing, etc.

Next, learn how to deploy, monitor, and manage the traffic of your Dubbo application and cluster.

More Features

Get more details by visiting the links below to get your hands dirty with some well-designed tasks on our website.

Which Dubbo version should I use?

Dubbo3JDKDependenciesDescription
3.3.0-beta1.8 ~ 17dependency list- Unstable version
- Features
   - Triple - gRPC and cURL compatible.
   - Rest-style programming support.
   - Spring Boot Starters.
3.2.51.8 ~ 17dependency list- Stable version (active)
- Features
  - Out-of-box metrics and tracing support.
  - Threadpool Isolation
  - 30% performance
  - Native Image
3.1.111.8 ~ 11dependency listStable version (not active)
Dubbo2JDKDependenciesDescription
2.7.231.8dependency listEOL
2.6.x, 2.5.x1.6 ~ 1.7EOL

Contributing

See CONTRIBUTING for details on submitting patches and the contribution workflow.

Contact

  • WeChat: apachedubbo
  • DingTalk group: 37290003945
  • Mailing list: guide
  • Twitter: @ApacheDubbo
  • Security issues: please mail to us privately.

License

Apache Dubbo is licensed under the Apache License Version 2.0. See the LICENSE file for details.