Skip to content

Commit

Permalink
[feat][doc] add configurations for broker load balancing (#661)
Browse files Browse the repository at this point in the history
  • Loading branch information
Anonymitaet authored Aug 7, 2023
1 parent 0dc0656 commit 9d09f5e
Showing 1 changed file with 69 additions and 0 deletions.
69 changes: 69 additions & 0 deletions static/reference/next/config/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,3 +32,72 @@ You can set specific configurations through Java properties.
| **Property** | **Description** |
| ------------------ | ------------------------------------------------------------ |
| pulsar.enableUring | Use `io_uring` instead of `epoll` as network IO mode. `-Dpulsar.enableUring=1` means this feature is enabled. |

## Broker load balancing configurations

Below is a brief summary of configurations for broker load balancing.

For detailed descriptions of each configuration, see [Broker load balancing | Configurations](pathname:///reference/#/@pulsar:version_reference@/config/reference-configuration-broker).

> Note
> Configurations with an asterisk (*) are only available in the extensible load balancer.
### Broker load data

- loadBalancerReportUpdateMinIntervalMillis
- loadBalancerReportUpdateThresholdPercentage
- loadBalancerReportUpdateMaxIntervalMinutes
- loadBalancerBandwithInResourceWeight
- loadBalancerBandwithOutResourceWeight
- loadBalancerCPUResourceWeight
- loadBalancerMemoryResourceWeight
- loadBalancerDirectMemoryResourceWeight
- loadBalancerHistoryResourcePercentage

### TopK bundle load data

- loadBalancerReportUpdateMinIntervalMillis
- statsUpdateFrequencyInSecs
- loadBalancerMaxNumberOfBundlesInBundleLoadReport*


### Bundle-broker assignment

- loadBalancerAverageResourceUsageDifferenceThresholdPercentage

### Bundle ownership system topic (ServiceUnitStateChannel)

- loadBalancerServiceUnitStateTombstoneDelayTimeInSeconds*

### Bundle unloading

- loadBalancerEnabled
- loadBalancerSheddingEnabled
- loadBalancerSheddingIntervalMinutes
- loadBalancerSheddingGracePeriodMinutes
- loadBalancerBrokerOverloadedThresholdPercentage
- loadBalancerLoadSheddingStrategy. The default value is [org.apache.pulsar.broker.loadbalance.impl.ThresholdShedder](https://github.com/apache/pulsar/blob/782e91fe327efe2c9c9107d6c679c2837d43935b/conf/broker.conf#L1324). Available values are:
- `org.apache.pulsar.broker.loadbalance.impl.ThresholdShedder`
- `org.apache.pulsar.broker.loadbalance.impl.UniformLoadShedder`
- `org.apache.pulsar.broker.loadbalance.impl.OverloadShedder`
- `org.apache.pulsar.broker.loadbalance.extensions.scheduler.TransferShedder`
- loadBalancerTransferEnabled*
- loadBalancerBrokerLoadTargetStd*
- loadBalancerSheddingConditionHitCountThreshold*
- loadBalancerMaxNumberOfBrokerSheddingPerCycle*
- loadBalanceSheddingDelayInSeconds*
- loadBalancerBrokerLoadDataTTLInSeconds*

### Bundle splitting

- loadBalancerEnabled
- loadBalancerAutoBundleSplitEnabled
- defaultNamespaceBundleSplitAlgorithm
- loadBalancerNamespaceBundleMaxTopics
- loadBalancerNamespaceBundleMaxSessions
- loadBalancerNamespaceBundleMaxMsgRate
- loadBalancerNamespaceBundleMaxBandwidthMbytes
- loadBalancerNamespaceMaximumBundles
- loadBalancerSplitIntervalMinutes*
- loadBalancerNamespaceBundleSplitConditionHitCountThreshold*
- loadBalancerMaxNumberOfBundlesToSplitPerCycle*

0 comments on commit 9d09f5e

Please sign in to comment.