Я могу сохранить данные Кафки в виде строки, как это:Как сэкономить класс класса Akka Stream для Kafka напрямую?
val producerSettings = ProducerSettings(actorSystem, new StringSerializer, new StringSerializer)
.withBootstrapServers("localhost:9092")
def kafkaSink(source: Source[ModbusMessage, NotUsed]) = source.map(a => s"Id:${a.sensorId}:Values:${a.values.mkString(",")}").map { m =>
new ProducerRecord[String, String]("sampleData", m)
}.
runWith(Producer.plainSink(producerSettings))
, но есть способ, чтобы сохранить мой случай класс непосредственно в Кафка. Например, если я хочу сохранить свои данные в форме класса My case ModbusMessage.
Если кто-то может предоставить мне быстрый пример, который был бы замечательным!
Спасибо. Помощь приветствуется!
Вы говорите о сериализации? Если да, хотите ли вы текстовое представление (например, JSON) или двоичное представление? –
Какая бы ни была лучше для производительности! Нужно ли преобразовать его в Json, используя библиотеку, например liftJson, а затем сохранить ее как строку внутри Kafka? –
Это вообще широко. Сначала я хотел бы использовать упрощенный подход JSON. –