Topic-keyed trade publishing
if data.get("type") == "match":
product_id = data.get("product_id")
producer.produce(
topic=TOPIC_NAME,
key=product_id,
value=json.dumps(data),
callback=delivery_callback,
)
producer.poll(0)The producer accepts only completed match events, keys them by product ID, and polls Kafka without blocking the WebSocket loop.