Кафка + Гатлинг + Потребительский Сценарий - PullRequest
0 голосов
/ 30 апреля 2020

Я пытаюсь написать потребительский сценарий, в котором я пытаюсь прочитать сообщение из очереди kafka, используя Gatling для запуска тестов perf.

import io.gatling.core.Predef._<BR>
import org.apache.kafka.clients.consumer._<BR>
import org.apache.kafka.common.serialization.StringDeserializer<BR>
import java.util
<BR>
class BasicSimulation1 extends Simulation {

  val kafkaTopic = "test_topic_1"
  val kafkaBrokers = "localhost:9092"

  val props = new util.HashMap[String, Object]()
  props.put(ConsumerConfig.BOOTSTRAP_SERVERS_CONFIG, kafkaBrokers)
  props.put(ConsumerConfig.VALUE_DESERIALIZER_CLASS_CONFIG,
    classOf[StringDeserializer])
  props.put(ConsumerConfig.KEY_DESERIALIZER_CLASS_CONFIG,
    classOf[StringDeserializer])
  props.put("group.id", "test-group")
  props.put("enable.auto.commit", "true")
  props.put("auto.commit.interval.ms", "1000")
  props.put("session.timeout.ms", "30000")

  val consumer = new KafkaConsumer[String, String](props)

  consumer.subscribe(java.util.Arrays.asList(kafkaTopic))

/*
  val scn = scenario("Kafka write Test")
            .exec(kafka("Simple Request").

  setUp(
    scn.inject(constantUsersPerSec(1) during(2 )))
    .protocols(props)*/

  while (true) {
    val records: ConsumerRecords[String, String] = consumer.poll(100)
    val recordsIterator = records.iterator()

    while (recordsIterator.hasNext) {
      val currentRecord: ConsumerRecord[String, String] = recordsIterator.next()
      println(currentRecord.value())
    }
  }
}

Проблема, с которой сталкиваются с кодом выше:
Я не могу завершите написание сценария для этого, чтобы я мог использовать BasicSimulation1 в моем файле performance-test.gradle для запуска сценария

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...