abstract class PartitionsFor[F[_], K, V] extends Metrics[F, K, V]
KafkaProducer.PartitionsFor extends KafkaProducer.Metrics to provide access to the underlying producer partitions.
- Source
- KafkaProducer.scala
- Alphabetic
- By Inheritance
- PartitionsFor
- Metrics
- KafkaProducer
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new PartitionsFor()
Abstract Value Members
- abstract def metrics: F[Map[MetricName, Metric]]
Returns producer metrics.
Returns producer metrics.
- Definition Classes
- Metrics
- See also
org.apache.kafka.clients.producer.KafkaProducer#metrics
- abstract def partitionsFor(topic: String): F[List[PartitionInfo]]
Returns partition metadata for the given topic.
Returns partition metadata for the given topic.
- See also
org.apache.kafka.clients.producer.KafkaProducer#partitionsFor
- abstract def produce(records: ProducerRecords[K, V]): F[F[ProducerResult[K, V]]]
Produces the specified ProducerRecords in two steps: the first effect puts the records in the buffer of the producer, and the second effect waits for the records to send.
Produces the specified ProducerRecords in two steps: the first effect puts the records in the buffer of the producer, and the second effect waits for the records to send.
It's possible to
flatten
the result from this function to have an effect which both sends the records and waits for them to finish sending.Waiting for individual records to send can substantially limit performance. In some cases, this is necessary, and so we might want to consider the following alternatives.
- Wait for the produced records in batches, improving the rate at which records are
produced, but loosing the guarantee where
produce >> otherAction
meansotherAction
executes after the record has been sent. - Run several
produce.flatten >> otherAction
concurrently, improving the rate at which records are produced, and still haveotherAction
execute after records have been sent, but losing the order of produced records.
- Definition Classes
- KafkaProducer
- Wait for the produced records in batches, improving the rate at which records are
produced, but loosing the guarantee where
Concrete 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(classOf[java.lang.CloneNotSupportedException]) @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- 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()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()