class BPS::Publisher::KafkaAsync

Public Class Methods

new(broker_addrs, **opts) click to toggle source

@see BPS::Kafka::Publisher

@param [Hash] opts the options. @option opts [Integer] :max_queue_size (defaults to: 1000)

the maximum number of messages allowed in the queue.

@option opts [Integer] :delivery_threshold (defaults to: 1000)

if greater than zero, the number of buffered messages that will automatically
trigger a delivery.

@option opts [Integer] :delivery_interval (defaults to: 30) if greater than zero, the number of

seconds between automatic message deliveries.
Calls superclass method BPS::Publisher::Kafka::new
# File lib/bps/publisher/kafka_async.rb, line 22
def initialize(broker_addrs, **opts) # rubocop:disable Lint/UselessMethodDefinition
  super
end

Private Instance Methods

init_producer(max_queue_size: 1000, delivery_threshold: 1000, delivery_interval: 30) click to toggle source
# File lib/bps/publisher/kafka_async.rb, line 28
def init_producer(max_queue_size: 1000, delivery_threshold: 1000, delivery_interval: 30)
  @client.async_producer(
    max_queue_size: max_queue_size,
    delivery_threshold: delivery_threshold,
    delivery_interval: delivery_interval,
  )
end