sarama (IBM/sarama)
Searching Database…
Что это такое?
Sarama — это клиентская библиотека Go для Apache Kafka, которая позволяет Go-приложениям отправлять и получать сообщения Kafka.
Это самостоятельный инструмент или библиотека, которую я импортирую в свой Go-код?
Это библиотека, которую вы импортируете в свое Go-приложение; она также включает пакеты-заглушки для тестирования и некоторые CLI-инструменты для диагностики.
Как добавить её в проект?
Добавьте её как зависимость Go-модуля и посмотрите документацию API и примеры на pkg.go.dev или в каталоге examples, чтобы увидеть типичные способы использования.
Нужна ли определённая версия Kafka или Go?
Нужен достаточно свежий брокер Kafka и инструментарий Go; Sarama поддерживает совместимость по принципу «2 релиза + 2 месяца» для обоих.
Будут ли работать старые версии Kafka?
Официально это не гарантируется, но, скорее всего, они будут работать нормально.
Где найти реальные примеры использования?
В каталоге examples репозитория находятся более развёрнутые примеры приложений, которые показывают, как на практике использовать Sarama.
Можно ли писать тесты для кода, использующего Sarama, без реального брокера Kafka?
Да, Sarama включает подпакет mocks, специально созданный для тестирования кода на поддельных ответах Kafka.
Где более подробная техническая документация?
В вики Sarama описаны более подробные технические детали и принципы устройства, а для понимания на уровне протокола указана спецификация протокола Kafka.
Which topics is it in?
message-queue, kafka, distributed-systems, streaming, testing, backend, networking, go, api, library, cli, developer-tools