16 package org.openkilda.northbound.config;
21 import org.apache.kafka.clients.producer.ProducerConfig;
22 import org.apache.kafka.common.serialization.StringSerializer;
23 import org.springframework.beans.factory.annotation.Value;
24 import org.springframework.context.annotation.Bean;
25 import org.springframework.context.annotation.Configuration;
26 import org.springframework.context.annotation.PropertySource;
27 import org.springframework.kafka.core.DefaultKafkaProducerFactory;
28 import org.springframework.kafka.core.KafkaTemplate;
29 import org.springframework.kafka.core.ProducerFactory;
31 import java.util.HashMap;
38 @PropertySource(
"classpath:northbound.properties")
43 @Value(
"${kafka.hosts}")
44 private String kafkaHosts;
54 Map<String, Object> props =
new HashMap<>();
55 props.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, kafkaHosts);
56 props.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, StringSerializer.class);
57 props.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, StringSerializer.class);
58 props.put(ProducerConfig.RETRIES_CONFIG, 0);
59 props.put(ProducerConfig.BATCH_SIZE_CONFIG, 16384);
60 props.put(ProducerConfig.BUFFER_MEMORY_CONFIG, 33554432);
61 props.put(ProducerConfig.LINGER_MS_CONFIG, 10);
62 props.put(ProducerConfig.ACKS_CONFIG,
"all");
76 return new DefaultKafkaProducerFactory<>(producerConfigs());
87 return new KafkaTemplate<>(producerFactory());
Map< String, Object > producerConfigs()
KafkaTemplate< String, String > kafkaTemplate()
ProducerFactory< String, String > producerFactory()
MessageProducer messageProducer()