Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Simple Kafka Producer, using confluent-kafka-python (librdkafka)
- # Sample dockerfile to run this producer
- #
- # FROM python:3
- # WORKDIR /usr/src/app
- # RUN pip install --no-cache-dir confluent-kafka==1.0.0
- # COPY ca-cert .
- # COPY rd.py .
- # CMD ["python", "./rd.py"]
- from confluent_kafka import Producer
- def delivery_report(err, msg):
- if err is not None:
- print("Message delivery failed: {}".format(err))
- else:
- print('Message delivered to {} [{}]'.format(msg.topic(), msg.partition()))
- topic = 'CLIENT_NAME-tests'
- p = Producer({
- 'bootstrap.servers': 'server.name:9094',
- 'security.protocol': 'SASL_SSL',
- 'ssl.ca.location': 'ca-cert',
- 'sasl.mechanisms': 'PLAIN',
- 'sasl.username': 'USERNAME',
- 'sasl.password': 'XXX_YYY_ZZZ',
- 'acks': 1,
- 'compression.type': 'lz4',
- })
- for i in range(1000000):
- message = "Event {}".format(i)
- p.produce(topic, message, on_delivery=delivery_report)
- print("{} Queue len: {}".format(message, len(p)))
- if len(p) > 90000:
- p.poll(0)
- p.flush()
Add Comment
Please, Sign In to add comment