apache / apache/dubbo

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

Open
#14,393 3 comments 0 reactions 0 assignees View on GitHub
component/sdk help wanted type/discussion type/proposal
Dominant language
Java
Stars
41.6k
Forks
26.4k
Avg merge
15h 13m
Merged PRs (30d)
4

Description

### Pre-check

- [X] I am sure that all the content I provide is in English.

### Search before asking

- [X] I had searched in the [issues](https://github.com/apache/dubbo/issues?q=is%3Aissue) and found no similar feature requirement.

### 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?

- [X] Yes I am willing to submit a pull request on my own!

### Code of Conduct

- [X] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct)

Contributor guide

Open the contributing guide

Research direction

Begin by mapping the Java SDK's provider-side deployment and traffic-routing entry points; the issue names no files or tests. Clarify how templates, traffic percentages, verification, and taking the old template offline should be represented, then define tests for the 5%-20%-50%-100% ramp-up and later upgrades.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
devops, distributed-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.