Skip to content

Commit acd55d0

Browse files
committed
producer properties review
1 parent 7de71b2 commit acd55d0

File tree

4 files changed

+18
-28
lines changed

4 files changed

+18
-28
lines changed

kafka-distributed-tracing/docker-compose-tracing.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -48,4 +48,4 @@ services:
4848

4949
volumes:
5050
db:
51-
driver: local
51+
driver: local

kafka-producer/src/main/java/org/hifly/kafka/demo/producer/KafkaConfig.java

+7-10
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,10 @@
11
package org.hifly.kafka.demo.producer;
22

3-
import com.hortonworks.registries.schemaregistry.serdes.avro.kafka.KafkaAvroSerializer;
43
import org.apache.kafka.clients.producer.ProducerConfig;
54
import org.apache.kafka.common.serialization.StringSerializer;
65

7-
import java.io.FileInputStream;
86
import java.io.IOException;
97
import java.io.InputStream;
10-
import java.nio.file.Files;
11-
import java.nio.file.Paths;
128
import java.util.Properties;
139

1410
public class KafkaConfig {
@@ -24,16 +20,17 @@ public class KafkaConfig {
2420

2521

2622
public static Properties loadConfig(final String configFile) throws IOException {
27-
if (!Files.exists(Paths.get(configFile))) {
28-
throw new IOException(configFile + " not found.");
29-
}
3023
final Properties cfg = new Properties();
31-
try (InputStream inputStream = new FileInputStream(configFile)) {
24+
25+
ClassLoader classLoader = KafkaConfig.class.getClassLoader();
26+
InputStream inputStream = classLoader.getResourceAsStream(configFile);
27+
28+
if (inputStream == null) {
29+
throw new IllegalArgumentException("file not found! " + configFile);
30+
} else {
3231
cfg.load(inputStream);
3332
}
3433

35-
cfg.put("acks", "all");
36-
3734
return cfg;
3835
}
3936
public static Properties stringProducer() {
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
11
package org.hifly.kafka.demo.producer.serializer.string;
22

3-
import org.hifly.kafka.demo.producer.ProducerCallback;
3+
import org.apache.kafka.clients.consumer.KafkaConsumer;
4+
import org.apache.kafka.clients.producer.KafkaProducer;
5+
import org.hifly.kafka.demo.producer.KafkaConfig;
46
import org.hifly.kafka.demo.producer.RecordMetadataUtil;
57
import org.apache.kafka.clients.producer.ProducerRecord;
68
import org.apache.kafka.clients.producer.RecordMetadata;
79

810
public class Runner {
911

1012
public static void main (String [] args) throws Exception {
13+
KafkaProducer<String, String> producer = new KafkaProducer<>(
14+
KafkaConfig.loadConfig("produce-kip-714.properties"));
1115
StringProducer baseProducer = new StringProducer();
12-
baseProducer.start();
16+
baseProducer.start(producer);
1317
bunchOfSynchMessages("topic1", baseProducer);
14-
baseProducer.start();
15-
bunchOfFFMessages("topic1", baseProducer);
16-
baseProducer.start();
17-
bunchOfAsynchMessages("topic1", baseProducer);
1818
}
1919

2020
public static void bunchOfSynchMessages(String topic, StringProducer baseProducer) {
@@ -26,15 +26,4 @@ public static void bunchOfSynchMessages(String topic, StringProducer baseProduce
2626
baseProducer.stop();
2727
}
2828

29-
public static void bunchOfFFMessages(String topic, StringProducer baseProducer) {
30-
for (int i= 0; i < 10; i++ )
31-
baseProducer.produceFireAndForget(new ProducerRecord<>(topic, Integer.toString(i)));
32-
baseProducer.stop();
33-
}
34-
35-
public static void bunchOfAsynchMessages(String topic, StringProducer baseProducer) {
36-
for (int i= 0; i < 10; i++ )
37-
baseProducer.produceAsync(new ProducerRecord<>(topic, Integer.toString(i)), new ProducerCallback());
38-
baseProducer.stop();
39-
}
4029
}

kafka-producer/src/main/resources/producer.properties

+4
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,14 @@
11
bootstrap.servers=
2+
key.serializer=
3+
value.serializer
24
security.protocol=
35
sasl.kerberos.service.name=
46
sasl.mechanism=
57
sasl.jaas.config=
68
ssl.truststore.location=
79
ssl.truststore.password=
10+
client.id=
11+
enable.metrics.push=
812
schema.registry.url=
913
schema.registry.ssl.truststore.location=
1014
schema.registry.ssl.truststore.password=

0 commit comments

Comments
 (0)