Sha256: 40161f65602ac9ba6563a447af7f3c8280f80ac059e85ca6b4d742590f94c16a

Contents?: true

Size: 560 Bytes

Versions: 5

Compression:

Stored size: 560 Bytes

Contents

module WaterDrop
  # Raw Kafka producers connection pool for WaterDrop messages delivery
  module Pool
    extend SingleForwardable
    # Delegate directly to pool
    def_delegators :pool, :with

    class << self
      # @return [::ConnectionPool] connection pool instance that we can then use
      def pool
        @pool ||= ConnectionPool.new(
          size: ::WaterDrop.config.connection_pool_size,
          timeout: ::WaterDrop.config.connection_pool_timeout
        ) do
          WaterDrop::ProducerProxy.new
        end
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
waterdrop-0.3.2.3 lib/water_drop/pool.rb
waterdrop-0.3.2.2 lib/water_drop/pool.rb
waterdrop-0.3.2.1 lib/water_drop/pool.rb
waterdrop-0.3.2 lib/water_drop/pool.rb
waterdrop-0.3.0 lib/water_drop/pool.rb