go-res
sarama
go-res | sarama | |
---|---|---|
- | 20 | |
62 | 10,115 | |
- | - | |
3.0 | 8.6 | |
about 2 months ago | 10 months ago | |
Go | Go | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
go-res
We haven't tracked posts mentioning go-res yet.
Tracking mentions began in Dec 2020.
sarama
-
Ingesting Data into OpenSearch using Apache Kafka and Go
Note: Since there are multiple Go clients for Kafka (including Sarama), please make sure to consult their client documentation to confirm whether they support IAM authentication.
-
book about golang and kafka
You might want to gradually replace that one with https://github.com/twmb/franz-go because Shopify is looking to find a new owner for Sarama and, until or if they do, it seems to be falling behind with maintenance: https://github.com/Shopify/sarama/issues/2461 For example, they still haven’t addressed this breaking change https://github.com/Shopify/sarama/issues/2358. franz-go has worked well so far in Benthos https://github.com/benthosdev/benthos/tree/main/internal/impl/kafka and it will likely end up as the only implementation once the Sarama-based one will be deprecated
-
Klient - a native, statically-compiled, command line client for Kafka
I've used mainly sarama wrapped with a bit of bespoke helper libraries. Never really looked into others, just grabbed one that was actively maintained and went for it.
-
Golang bad design reference
Well, as someone who reviews a lot of code, I don't like seeing 100s of little files when a handful of logically grouped files would do. For example, this popular go project: https://github.com/Shopify/sarama is currently 256 small .go files, largely following a one class/file rule.
-
Concurrency in Go is hard
The first example is something we ran into while working on a project. Up until recently, the sarama library (Go library for Apache Kafka) contained the following piece of code (at sarama/version.go):
-
AWS MSK with go sarama
Im using the go sarama library to connect to the cluster, using this basic example.
-
Benthos - Fancy stream processing made operationally mundane
If you find the kafka input slow, try kafka_franz. It might be a bit faster, since it’s based on https://github.com/twmb/franz-go. The kafka one is based on https://github.com/Shopify/sarama. You can also write a custom input based on https://github.com/confluentinc/confluent-kafka-go, but this library relies on CGo, which can be annoying.
- Sarama - Go library for Apache Kafka.
- Understanding Kafka with Factorio
-
Is segmentio/kafka-go production ready ?
There are a few factors that are stopping me from using kafka-go over Shopify's sarama.
What are some alternatives?
hare - 🐇 CLI tool for websockets and Go package
Confluent Kafka Golang Client - Confluent's Apache Kafka Golang client
NATS - Golang client for NATS, the cloud native messaging system.
kafka-go - Kafka library in Go
machinery - Machinery is an asynchronous task queue/job queue based on distributed message passing.
franz-go - franz-go contains a feature complete, pure Go library for interacting with Kafka from 0.8.0 through 3.6+. Producing, consuming, transacting, administrating, etc.
pingme - PingMe is a CLI which provides the ability to send messages or alerts to multiple messaging platforms & email.
librdkafka - The Apache Kafka C/C++ library
Centrifugo - Scalable real-time messaging server in a language-agnostic way. Self-hosted alternative to Pubnub, Pusher, Ably. Set up once and forever.
gorush - A push notification server written in Go (Golang).
chanify - Chanify is a safe and simple notification tools. This repository is command line tools for Chanify.
Mercure - 🪽 An open, easy, fast, reliable and battery-efficient solution for real-time communications