From cf3b370da9610d72f5945c99ac04248f28b2a948 Mon Sep 17 00:00:00 2001 From: Dana Powers Date: Sat, 30 Jul 2016 17:06:47 -0700 Subject: Use socket_options configuration to setsockopts(). Default TCP_NODELAY --- kafka/producer/kafka.py | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'kafka/producer/kafka.py') diff --git a/kafka/producer/kafka.py b/kafka/producer/kafka.py index 02e4621..b91ba24 100644 --- a/kafka/producer/kafka.py +++ b/kafka/producer/kafka.py @@ -3,6 +3,7 @@ from __future__ import absolute_import import atexit import copy import logging +import socket import threading import time import weakref @@ -188,6 +189,9 @@ class KafkaProducer(object): send_buffer_bytes (int): The size of the TCP send buffer (SO_SNDBUF) to use when sending data. Default: None (relies on system defaults). Java client defaults to 131072. + socket_options (list): List of tuple-arguments to socket.setsockopt + to apply to broker connection sockets. Default: + [(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)] reconnect_backoff_ms (int): The amount of time in milliseconds to wait before attempting to reconnect to a given host. Default: 50. @@ -256,6 +260,7 @@ class KafkaProducer(object): 'request_timeout_ms': 30000, 'receive_buffer_bytes': None, 'send_buffer_bytes': None, + 'socket_options': [(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)], 'reconnect_backoff_ms': 50, 'max_in_flight_requests_per_connection': 5, 'security_protocol': 'PLAINTEXT', -- cgit v1.2.1