final case class QueueSizeBasedFetchStrategy(partitionPreFetchBufferLimit: Int = 1024) extends FetchStrategy with Product with Serializable
A fetch strategy that allows a stream to fetch data when its queue size is below partitionPreFetchBufferLimit.
- partitionPreFetchBufferLimit
The queue size below which more records are fetched and buffered (per partition). This buffer improves throughput and supports varying downstream message processing time, while maintaining some backpressure. Large values effectively disable backpressure at the cost of high memory usage, low values will effectively disable prefetching in favour of low memory consumption. The number of records that is fetched on every poll is controlled by the
max.poll.recordssetting, the number of records fetched for every partition is somewhere between 0 andmax.poll.records. A value that is a power of 2 offers somewhat better queueing performance. The default value for this parameter is 2 * the defaultmax.poll.recordsof 500, rounded to the nearest power of 2.
- Alphabetic
- By Inheritance
- QueueSizeBasedFetchStrategy
- Serializable
- Serializable
- Product
- Equals
- FetchStrategy
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
QueueSizeBasedFetchStrategy(partitionPreFetchBufferLimit: Int = 1024)
- partitionPreFetchBufferLimit
The queue size below which more records are fetched and buffered (per partition). This buffer improves throughput and supports varying downstream message processing time, while maintaining some backpressure. Large values effectively disable backpressure at the cost of high memory usage, low values will effectively disable prefetching in favour of low memory consumption. The number of records that is fetched on every poll is controlled by the
max.poll.recordssetting, the number of records fetched for every partition is somewhere between 0 andmax.poll.records. A value that is a power of 2 offers somewhat better queueing performance. The default value for this parameter is 2 * the defaultmax.poll.recordsof 500, rounded to the nearest power of 2.
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native() @IntrinsicCandidate()
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- val partitionPreFetchBufferLimit: Int
-
def
selectPartitionsToFetch(streams: Chunk[PartitionStream]): ZIO[Any, Nothing, Set[TopicPartition]]
Selects which partitions can fetch data in the next poll.
Selects which partitions can fetch data in the next poll.
- streams
all stream for this consumer
- returns
the partitions that may fetch in the next poll
- Definition Classes
- QueueSizeBasedFetchStrategy → FetchStrategy
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )