apache / dubbo

The java implementation of Apache Dubbo. An RPC and microservice framework.
https://dubbo.apache.org/
Apache License 2.0
40.55k stars 26.44k forks source link

[Feature]The SDK provides the capability of grayscale ramp-up #14393

Open QzLijian1 opened 4 months ago

QzLijian1 commented 4 months ago

Pre-check

Search before asking

Apache Dubbo Component

Java SDK (apache/dubbo)

Descriptions

The SDK provides the capability of grayscale ramp-up, enabling blue-green deployment plus grayscale release. Specifically, the application program of the provider is deployed in two sets of templates with equally scaled containers (e.g., N containers). Ultimately, the production traffic flows into only one set of templates. When upgrading the provider program, it is first deployed to the template that does not receive traffic and then a portion of the traffic is introduced (e.g., 5%). After verification, the traffic is gradually expanded until it reaches 100% (5%-20%-50%-100%). After all the traffic is introduced to the upgraded provider template, the containers in the old template are taken offline. Subsequent upgrades continue to use this process to complete the grayscale ramp-up and upgrade of traffic without any tagging of the consumer.

Related issues

No response

Are you willing to submit a pull request to fix on your own?

Code of Conduct

JunJieLiu51520 commented 3 months ago

Does‘t it similar to condition router ? @QzLijian1 @AlbumenJ

or automaticly add/remove tag config

jk-tonycui commented 1 month ago

we can provider weighted label router feature, just like the solution for nginx upstream grayrelease. what do you think about it? @AlbumenJ

AlbumenJ commented 1 month ago

You can submit to dubbo-spi-extensions