gatling как зависимости Maven: < /p>
io.gatling
gatling-maven-plugin
4.19.1
io.gatling.highcharts
gatling-charts-highcharts
3.14.3
test
org.apache.kafka
kafka-clients
4.0.0
< /code>
Я создал нагрузочный тест: < /p>
import io.gatling.javaapi.core.*;
import org.apache.kafka.clients.producer.*;
import java.util.Properties;
import java.util.concurrent.TimeUnit;
import static io.gatling.javaapi.core.CoreDsl.*;
public class KafkaLoadTesting extends Simulation {
private static final String TOPIC = "likes-bucket";
private static final String BOOTSTRAP_SERVERS = "localhost:9092";
private static void sendKafkaMessage(String message) {
Properties props = new Properties();
props.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, BOOTSTRAP_SERVERS);
props.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, "org.apache.kafka.common.serialization.StringSerializer");
props.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, "org.apache.kafka.common.serialization.StringSerializer");
Producer producer = new KafkaProducer(props);
ProducerRecord record = new ProducerRecord(TOPIC, message);
producer.send(record);
producer.close();
}
ChainBuilder kafkaAction = exec(session -> {
String payload = "{\"talkName\":\"Spring best practice\",\"likes\":1}";
sendKafkaMessage(payload);
return session;
});
{
setUp(
scenario("Kafka Load Test")
.exec(kafkaAction)
.pause(1, TimeUnit.SECONDS.ordinal())
.repeat(100).on(kafkaAction)
.injectOpen(atOnceUsers(10))
).protocols();
}
}
< /code>
Я запускаю тест ./mvnw Clean Gatling: Test
My Java версия: Java 23.0.2 2025-01-21
Я не вижу никаких сообщений в Кафке, но я получил петлю. Что я делаю не так и как правильный способ отправить сообщение брокеру? я не вижу никакой ошибки в консоли.
Подробнее здесь: https://stackoverflow.com/questions/796 ... on-gatling