Go-lang Distributed Systems

Back

1. arpc

More effective network communication, support two-way-calling, notify, broadcast.

2. celeriac

Library for adding support for interacting and monitoring Celery workers, tasks and events in Go.

3. consistent

Consistent hashing with bounded loads.

4. consistenthash

Consistent hashing with configurable replicas.

5. dht

BitTorrent Kademlia DHT implementation.

6. digota

grpc ecommerce microservice.

7. dot

distributed sync using operational transformation/OT.

8. doublejump

A revamped Google's jump consistent hash.

9. dragonboat

A feature complete and high performance multi-group Raft library in Go.

10. drmaa

Job submission library for cluster schedulers based on the DRMAA standard.

11. dynamolock

DynamoDB-backed distributed locking implementation.

12. dynatomic

A library for using DynamoDB as an atomic counter.

13. emitter-io

High performance, distributed, secure and low latency publish-subscribe platform built with MQTT, Websockets and love.

14. failured

adaptive accrual failure detector for distributed systems.

15. flowgraph

flow-based programming package.

16. gleam

Fast and scalable distributed map/reduce system written in pure Go and Luajit, combining Go's high concurrency with Luajit's high performance, runs standalone or distributed.

17. glow

Easy-to-Use scalable distributed big data processing, Map-Reduce, DAG execution, all in pure Go.

18. gmsec

A Go distributed systems development framework.

19. go-doudou

A gossip protocol and OpenAPI 3.0 spec based decentralized microservice framework. Built-in go-doudou cli focusing on low-code and rapid dev can power up your productivity.

20. go-health

Library for enabling asynchronous dependency health checks in your service.

21. go-jump

Port of Google's "Jump" Consistent Hash function.

22. go-kit

Microservice toolkit with support for service discovery, load balancing, pluggable transports, request tracking, etc.

23. go-micro

A distributed systems development framework.

24. go-mysql-lock

MySQL based distributed lock.

25. go-pdu

A decentralized identity-based social network.

26. go-sundheit

A library built to provide support for defining async service health checks for golang services.

27. go-zero

A web and rpc framework. It's born to ensure the stability of the busy sites with resilient design. Builtin goctl greatly improves the development productivity.

28. gorpc

Simple, fast and scalable RPC library for high load.

29. grpc-go

The Go language implementation of gRPC. HTTP/2 based RPC.

30. hprose

Very newbility RPC Library, support 25+ languages now.

31. jsonrpc

JSON-RPC 2.0 HTTP client implementation.

32. Kratos

A modular-designed and easy-to-use microservices framework in Go.

33. liftbridge

Lightweight, fault-tolerant message streams for NATS.

34. lura

Ultra performant API Gateway framework with middlewares.

35. micro

A distributed systems runtime for the cloud and beyond.

36. NATS

Lightweight, high performance messaging system for microservices, IoT, and cloud native systems.

37. outboxer

Outboxer is a go library that implements the outbox pattern.

38. pglock

PostgreSQL-backed distributed locking implementation.

39. pjrpc

Golang JSON-RPC Server-Client with Protobuf spec.

40. raft

Go implementation of the Raft consensus protocol, by CoreOS.

41. rain

BitTorrent client and library.

42. redis-lock

Simplified distributed locking implementation using Redis.

43. resgate

Realtime API Gateway for building REST, real time, and RPC APIs, where all clients are synchronized seamlessly.

44. ringpop-go

Scalable, fault-tolerant application-layer sharding for Go applications.

45. rpcx

Distributed pluggable RPC service framework like alibaba Dubbo.

46. Semaphore

A straightforward (micro) service orchestrator.

47. sleuth

Library for master-less p2p auto-discovery and RPC between HTTP services (using [ZeroMQ](https://github.com/zeromq/libzmq)).

48. torrent

BitTorrent client package.