Distributed Systems

62 packages 3 resources

Packages (62)

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.

32,821 4,290

go-kit

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

27,578 2,451

Kratos

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

25,541 4,154

grpc-go

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

22,844 4,651

go-micro

A distributed systems development framework.

22,721 2,403

NATS

NATS is a simple, secure, and performant communications system for digital systems, services, and devices.

19,384 1,760

raft

Golang implementation of the Raft consensus protocol, by HashiCorp.

8,960 1,056

rpcx

Distributed pluggable RPC service framework like alibaba Dubbo.

8,274 1,186

Kitex

A high-performance and strong-extensibility Golang RPC framework that helps developers build microservices. If the performance and extensibility are the main concerns when you develop microservices, Kitex can be a good choice.

7,893 899

lura

Ultra performant API Gateway framework with middlewares.

6,747 583

torrent

BitTorrent client package.

5,987 658

dragonboat

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

5,297 567

evans

Evans: more expressive universal gRPC client.

4,458 193

emitter-io

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

3,999 355

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.

3,556 291

glow

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

3,218 249

Dragonfly

Provide efficient, stable and secure file distribution and image acceleration based on p2p technology to be the best practice and standard solution in cloud native architectures.

3,089 380

sponge

A distributed development framework that integrates automatic code generation, gin and grpc frameworks, base development frameworks.

2,803 263

liftbridge

Lightweight, fault-tolerant message streams for NATS.

2,777 117

go-eagle

A Go framework for the API or Microservice with handy scaffolding tools.

2,424 260

oras

CLI and library for OCI Artifacts in container registries.

2,179 226

mochi mqtt

Fully spec compliant, embeddable high-performance MQTT v5/v3 broker for IoT, smarthome, and pubsub.

1,819 306

redis-lock

Simplified distributed locking implementation using Redis.

1,742 162

hprose

Very newbility RPC Library, support 25+ languages now.

1,264 203

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.

1,198 200

K8gb

A cloud native Kubernetes Global Balancer.

1,154 138

trpc-go

The Go language implementation of tRPC, which is a pluggable, high-performance RPC framework.

1,129 132

rain

BitTorrent client and library.

1,114 84

arpc

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

1,090 79

raft

Go implementation of the Raft consensus protocol, by CoreOS.

999 233

Temporal

Durable execution system for making code fault-tolerant and simple.

848 288

consistent

Consistent hashing with bounded loads.

769 74

gorpc

Simple, fast and scalable RPC library for high load.

709 98

go-sundheit

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

560 30

digota

grpc ecommerce microservice.

526 86

go-jump

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

388 33

sleuth

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

387 24

jsonrpc

JSON-RPC 2.0 HTTP client implementation.

370 99

dht

BitTorrent Kademlia DHT implementation.

351 67

Tarmac

Framework for writing functions, microservices, or monoliths with WebAssembly

343 16

jsonrpc

The jsonrpc package helps implement of JSON-RPC 2.0.

193 22

outboxer

Outboxer is a go library that implements the outbox pattern.

166 24

outbox

Lightweight library for the transactional outbox pattern in Go, not tied to any specific relational database or broker.

120 3

doublejump

A revamped Google's jump consistent hash.

110 14

Semaphore

A straightforward (micro) service orchestrator.

95 16

dot

distributed sync using operational transformation/OT.

87 8

celeriac

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

76 13

capillaries

distributed batch data processing framework.

68 4

flowgraph

flow-based programming package.

65 9

drmaa

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

51 19

go-pdu

A decentralized identity-based social network.

49 7

committer

A distributed transactions management system (2PC/3PC implementation).

41 6

gmsec

A Go distributed systems development framework.

25 6

dynatomic

A library for using DynamoDB as an atomic counter.

17 3

bedrock

Provides a minimal, modular and composable foundation for quickly developing services and more use case specific frameworks in Go.

15 1

failured

adaptive accrual failure detector for distributed systems.

15 2

rpcplatform

Framework for microservices with service discovery, load balancing, and related features.

1

micro

A distributed systems runtime for the cloud and beyond.

pjrpc

Golang JSON-RPC Server-Client with Protobuf spec.

Resources & Links (3)