Messaging

Libraries that implement messaging systems.

Newest releases

shaswata56 A high-level RabbitMQ driver for Golang.
 

NishanthSpShetty Lignum is a distributed message queue, implementing something like kafka in go using Consul as cluster management service.
 

rabbitmq An AMQP 0-9-1 Go client maintained by the RabbitMQ team.
 

OpenIMSDK Instant messaging server. Backend in pure Golang, wire transport protocol is JSON over websocket.
 
224

kha7iq PingMe is a personal project to satisfy my needs of having alerts, most major platforms have integration to send alerts but its not always useful, either you are stuck with one particular platform, or you have to do alot of integr
 

c16a Hermes Hermes is a tiny MQTT compatible broker written in Go. The goals of the project are as below Easy to compile, and run Tiny footprint Extensible
 

queer 신경 신경 /ɕʰinɡjʌ̹ŋ/ • sin-gyeong (try it with IPA Reader) nerve Nerve /nərv/ • noun (in the body) a whitish fiber or bundle of fibers that transmits imp
 

hoorayman a distributed chat system which can be used as chat rooms or state synchronization
 

dominikbraun buneary, pronounced bun-ear-y, is an easy-to-use RabbitMQ command line client for managing exchanges, managing queues and publishing messages to exchanges.
 

mostafa This is a k6 extension using the xk6 system.
 
20.9k

mattermost It's written in Golang and React and runs as a single Linux binary with MySQL or PostgreSQL.
 

batchcorp RabbitMQ wrapper for steadway/amqp that supports auto-reconnects
 
1.5k

vmihailenco msgpack.org[Go] MessagePack encoding for Golang
 

mkocikowski Package libkafka is a low level library for producing to and consuming from Kafka 2.3+. It has no external dependencies. It is not modeled on the Java client. All API calls are synchronous and all code executes in the calling goro
 

mkocikowski This is a high-level kafka client based on the low level libkafka library. It is meant as an alternative to Sarama for producing high volumes of messages.
 
Popular
9.9k

nats-io NATS is a simple, secure and performant communications system for digital systems, services and devices. NATS is part of the Cloud Native Computing Foundation (CNCF). NATS has over 30 client language implementation
 
221

mustafaturan 🔊 Bus Bus is a minimalist event/message bus implementation for internal communication. It is heavily inspired from my event_bus package for Elixir language. Installation Via go packages: go get
 
658

joncrlsn dque - a fast embedded durable queue for Go dque is: persistent -- survives program restarts scalable -- not limited by your RAM, but by your disk space FIFO -- First In First Out embedded -- compiled into
 
1.2k

Clivern Beaver A Real Time Messaging Server. Beaver is a real-time messaging server. With beaver you can easily build scalable in-app notifications, realtime graphs, multiplayer games, chat applications, geotrackin
 
20.3k

nsqio Source: https://github.com/nsqio/nsq Issues: https://github.com/nsqio/nsq/issues Mailing List: [email protected] IRC: #nsq on freenode Docs: http://nsq.io Twitter: @nsqio NSQ is a realt
 
Popular
3.4k

Jeffail Benthos is a high performance and resilient message streaming service, able to connect various sources and sinks and perform arbitrary actions, transformations and filters on payloads. It is easy to deploy and monitor, and r
 

vgoio Vgo Rebuild the way of instant messaging, connecting server-side,app-user,web-user by pub/sub. Homepage: http://vgo.io ###Project status Under refactoring Features Pub/Sub Multiple clients can su
 
466

alash3al Websocketify (wsify) v2.0 Just a tiny, simple and realtime pub/sub messaging service Why I wanted to create a tiny solution that can replace pusher and similar services and learning more about the
 
299

goiiot libmqtt Feature rich modern MQTT library in pure Go, for Go, C/C++, Java Table of contents Features Usage Topic Routing Session Persist Benchmark Extensions LICENSE Features
 
1.5k

sandglass Sandglass is a distributed, horizontally scalable, persistent, time ordered message queue. It was developed to support asynchronous tasks and message scheduling which makes it suitable for usage as a task queue.
 

vgoio Vgo Rebuild the way of instant messaging, connecting server-side,app-user,web-user by pub/sub. Homepage: http://vgo.io ###Project status Under refactoring Features Pub/Sub Multiple clients can su
 

rgamba Postman Postman is a HTTP to AMQP reverse proxy that combines the ease of implementing an HTTP API with the benefits of async inter-service communication. Most of the HTTP services use a reverse proxy (nginx, Apache, e
 

siadat System V message queue IPC functions Wrapper functions for System V Message Queue IPC. Example package main import ( "log" "syscall" "github.com/siadat/ipc" ) func main() { key, err := ipc.Ftok("
 
110

MasslessParticle GoQ Package Goq provides a lightweight, extensible, in-memory message broker. go get github.com/masslessparticle/goq Running tests: go get github.com/onsi/ginkgo go get github.com/onsi/gomega go install github.com/
 

ridwanmsharif mqueue (Go) In-memory message broker in Go over an HTTP API using a concurrent, thread-safe publisher/subscriber architecture with multiple topics. Installation $ go get github.com/ridwanmsharif/mqueue $ c
 

meitu go-consumergroup Go-consumergroup is a kafka consumer library written in golang with rebalance and chroot supports. Chinese Doc Requirements Apache Kafka 0.8.x, 0.9.x, 0.10.x, 0.11.x, 1.0.x
 
126

asim MQ MQ is a simple in-memory message broker It is used mainly for testing. Purely a toy project. Features In-memory message queue Optionally persist to file Client side clustering Proxying MQ cluste
 

jakewins 4FQ (Four Fast Queues) This repository contains four fast queues for Go: Multi-Producer/Multi-Consumer Multi-Producer/Single-Consumer Single-Producer/Multi-Consumer Single-Producer/Single-Consumer For some