Skip to content

Commit 035dc4f

Browse files
committed
Object değerleri için yeni ProducerFactory ve KafkaTemplate eklendi; hata yönetimi ve yeniden deneme ayarları güncellendi.
1 parent 9752be6 commit 035dc4f

1 file changed

Lines changed: 25 additions & 0 deletions

File tree

user-service/src/main/java/com/craftpilot/userservice/config/KafkaConfig.java

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
import org.springframework.kafka.core.ProducerFactory;
1313
import org.springframework.kafka.listener.CommonErrorHandler;
1414
import org.springframework.kafka.listener.DefaultErrorHandler;
15+
import org.springframework.kafka.support.serializer.JsonSerializer;
1516
import org.springframework.util.backoff.ExponentialBackOff;
1617

1718
import java.util.HashMap;
@@ -53,6 +54,30 @@ public ProducerFactory<String, String> producerFactory() {
5354
public KafkaTemplate<String, String> kafkaTemplate() {
5455
return new KafkaTemplate<>(producerFactory());
5556
}
57+
58+
// Object değerleri için yeni ProducerFactory
59+
@Bean
60+
public ProducerFactory<String, Object> objectProducerFactory() {
61+
Map<String, Object> configProps = new HashMap<>();
62+
configProps.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, bootstrapServers);
63+
configProps.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, StringSerializer.class);
64+
configProps.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, JsonSerializer.class);
65+
configProps.put(ProducerConfig.ACKS_CONFIG, "all");
66+
configProps.put(ProducerConfig.RETRIES_CONFIG, 10);
67+
configProps.put(ProducerConfig.RETRY_BACKOFF_MS_CONFIG, 1000);
68+
configProps.put(ProducerConfig.RECONNECT_BACKOFF_MS_CONFIG, 1000);
69+
configProps.put(ProducerConfig.RECONNECT_BACKOFF_MAX_MS_CONFIG, 5000);
70+
configProps.put(ProducerConfig.MAX_BLOCK_MS_CONFIG, 10000);
71+
configProps.put(ProducerConfig.DELIVERY_TIMEOUT_MS_CONFIG, 60000);
72+
configProps.put(ProducerConfig.REQUEST_TIMEOUT_MS_CONFIG, 30000);
73+
return new DefaultKafkaProducerFactory<>(configProps);
74+
}
75+
76+
// Object değerleri için KafkaTemplate
77+
@Bean
78+
public KafkaTemplate<String, Object> kafkaTemplateObject() {
79+
return new KafkaTemplate<>(objectProducerFactory());
80+
}
5681

5782
@Bean
5883
public CommonErrorHandler errorHandler() {

0 commit comments

Comments
 (0)