apache / apache/pulsar

[loadBalance] Support to trigger loadBalance in a specified time range.

Open
#20,056 1 comment 0 reactions 0 assignees View on GitHub
Stale type/enhancement
Dominant language
Java
Stars
15.3k
Forks
3.8k
Avg merge
1d 14h
Merged PRs (30d)
160

Description

### Search before asking

- [X] I searched in the [issues](https://github.com/apache/pulsar/issues) and found nothing similar.

### Motivation

In most real business scenarios, the broker's load is fixed at a certain time interval. I want to provide a mechanism to trigger loadBalance:
Support for time-specific configuration (cron expressions), such as detection of 0 0 0 * *?
The detection data index should be the data during the peak period of the day (reported cpu, memory index, etc.). This time range can be manually configured by the user, such as: 10:00 ~ 20:00, and the cpu and memory data reported in this range can be executed in the specified cron expression.

The purpose of this is to make the topic distribution in broker as uniform as possible, but the allocation time can not be in the peak period of business, and the multi-dimensional indicators reported during the day can be used to determine how to divide the most reasonable.

### Solution

_No response_

### Alternatives

_No response_

### Anything else?

_No response_

### Are you willing to submit a PR?

- [ ] I'm willing to submit a PR!

Contributor guide

Open the contributing guide

Research direction

The issue names no files, tests, or entry points. Start by clarifying the cron configuration, the configurable peak-data time range, and how the collected metrics should trigger load balancing. Done should include an agreed design and validation that balancing uses the specified schedule and data window.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
backend, 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.