Back to questions
Junior — Middle
70
Есть ли у вас опыт разработки адаптеров или встроенных решений для взаимодействия с Kafka?
Companies where asked
digitech
Answer from AI
sobes.tech AI
Да, в проектах на Python часто создаются адаптеры или обёртки для взаимодействия с Apache Kafka — распределённой системой обмена сообщениями.
Для работы с Kafka в Python обычно используют библиотеку confluent-kafka или kafka-python. Адаптеры помогают абстрагировать детали подключения, сериализации сообщений и обработки ошибок.
Пример простого адаптера для отправки сообщений:
from confluent_kafka import Producer
class KafkaAdapter:
def __init__(self, brokers):
self.producer = Producer({'bootstrap.servers': brokers})
def delivery_report(self, err, msg):
if err is not None:
print(f"Ошибка доставки: {err}")
else:
print(f"Сообщение доставлено в {msg.topic()} [{msg.partition()}]")
def send(self, topic, key, value):
self.producer.produce(topic, key=key, value=value, callback=self.delivery_report)
self.producer.flush()
# Использование
adapter = KafkaAdapter('localhost:9092')
adapter.send('my_topic', key='key1', value='Hello Kafka')
Такой адаптер упрощает интеграцию с Kafka и позволяет централизованно управлять логикой отправки и обработки сообщений.