Class BundleSplitterTask

java.lang.Object
org.apache.pulsar.broker.loadbalance.impl.BundleSplitterTask
All Implemented Interfaces:
BundleSplitStrategy

public class BundleSplitterTask extends Object implements BundleSplitStrategy
Determines which bundles should be split based on various thresholds.
  • Constructor Details

    • BundleSplitterTask

      public BundleSplitterTask()
      Construct a BundleSplitterTask.
  • Method Details

    • findBundlesToSplit

      public Set<String> findBundlesToSplit(LoadData loadData, PulsarService pulsar)
      Determines which bundles should be split based on various thresholds.
      Specified by:
      findBundlesToSplit in interface BundleSplitStrategy
      Parameters:
      loadData - Load data to base decisions on (does not have benefit of preallocated data since this may not be the leader broker).
      pulsar - Service to use.
      Returns:
      All bundles who have exceeded configured thresholds in number of topics, number of sessions, total message rates, or total throughput.