trait Producer extends AnyRef
- Alphabetic
- By Inheritance
- Producer
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Abstract Value Members
-
abstract
def
flush: Task[Unit]
Flushes the producer's internal buffer.
Flushes the producer's internal buffer. This will guarantee that all records currently buffered will be transmitted to the broker.
-
abstract
def
metrics: Task[Map[MetricName, Metric]]
Expose internal producer metrics
-
abstract
def
produce[R, K, V](topic: String, key: K, value: V, keySerializer: Serializer[R, K], valueSerializer: Serializer[R, V]): RIO[R, RecordMetadata]
Produces a single record and await broker acknowledgement.
Produces a single record and await broker acknowledgement. See produceAsync[R,K,V](topic:String* for version that allows to avoid round-trip-time penalty for each record.
-
abstract
def
produce[R, K, V](record: ProducerRecord[K, V], keySerializer: Serializer[R, K], valueSerializer: Serializer[R, V]): RIO[R, RecordMetadata]
Produces a single record and await broker acknowledgement.
Produces a single record and await broker acknowledgement. See produceAsync[R,K,V](record* for version that allows to avoid round-trip-time penalty for each record.
-
abstract
def
produceAsync[R, K, V](topic: String, key: K, value: V, keySerializer: Serializer[R, K], valueSerializer: Serializer[R, V]): RIO[R, Task[RecordMetadata]]
Produces a single record.
Produces a single record. The effect returned from this method has two layers and describes the completion of two actions:
- The outer layer describes the enqueueing of the record to the Producer's internal buffer. 2. The inner layer describes receiving an acknowledgement from the broker for the transmission of the record.
It is usually recommended to not await the inner layer of every individual record, but enqueue a batch of records and await all of their acknowledgements at once. That amortizes the cost of sending requests to Kafka and increases throughput. See produce[R,K,V](topic* for version that awaits broker acknowledgement.
-
abstract
def
produceAsync[R, K, V](record: ProducerRecord[K, V], keySerializer: Serializer[R, K], valueSerializer: Serializer[R, V]): RIO[R, Task[RecordMetadata]]
Produces a single record.
Produces a single record. The effect returned from this method has two layers and describes the completion of two actions:
- The outer layer describes the enqueueing of the record to the Producer's internal buffer. 2. The inner layer describes receiving an acknowledgement from the broker for the transmission of the record.
It is usually recommended to not await the inner layer of every individual record, but enqueue a batch of records and await all of their acknowledgements at once. That amortizes the cost of sending requests to Kafka and increases throughput. See produce[R,K,V](record* for version that awaits broker acknowledgement.
-
abstract
def
produceChunk[R, K, V](records: Chunk[ProducerRecord[K, V]], keySerializer: Serializer[R, K], valueSerializer: Serializer[R, V]): RIO[R, Chunk[RecordMetadata]]
Produces a chunk of records.
Produces a chunk of records. See produceChunkAsync for version that allows to avoid round-trip-time penalty for each chunk.
-
abstract
def
produceChunkAsync[R, K, V](records: Chunk[ProducerRecord[K, V]], keySerializer: Serializer[R, K], valueSerializer: Serializer[R, V]): RIO[R, Task[Chunk[RecordMetadata]]]
Produces a chunk of records.
Produces a chunk of records. The effect returned from this method has two layers and describes the completion of two actions:
- The outer layer describes the enqueueing of all the records to the Producer's internal buffer. 2. The inner layer describes receiving an acknowledgement from the broker for the transmission of the records.
It is possible that for chunks that exceed the producer's internal buffer size, the outer layer will also signal the transmission of part of the chunk. Regardless, awaiting the inner layer guarantees the transmission of the entire chunk.
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( ... ) @native() @IntrinsicCandidate()
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
-
def
hashCode(): Int
- 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()
-
def
produceAll[R, K, V](keySerializer: Serializer[R, K], valueSerializer: Serializer[R, V]): ZPipeline[zio.&[R, Producer], Throwable, ProducerRecord[K, V], RecordMetadata]
A stream pipeline that produces all records from the stream.
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
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( ... )
Deprecated Value Members
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] ) @Deprecated
- Deprecated