User Experience on mobile might not be great yet, but I'm working on it.

Your first time on this page? Allow me to give some explanations.

Awesome Microservices

A curated list of Microservice Architecture related principles and technologies.

Here you can see meta information about this topic like the time we last updated this page, the original creator of the awesome list and a link to the original GitHub repository.

Last Update: Nov. 26, 2020, 12:03 p.m.

Thank you mfornos & contributors
View Topic on GitHub:
mfornos/awesome-microservices

Search for resources by name or description.
Simply type in what you are looking for and the results will be filtered on the fly.

Further filter the resources on this page by type (repository/other resource), number of stars on GitHub and time of last commit in months.

Platforms

Mantl is a modern platform for rapidly deploying globally distributed services

3.06K
443
2y 9m
Apache-2.0

Cloud native programming language.

Open source runtime for writing highly performant microservices using any programming language.

An open source, Kubernetes-native, microservices and serverless platform.

Open source provider of microservice and webhook hosting.

Open source microservice-oriented programming language.

M3O

A serverless platform for microservices development.

Netflix open source software ecosystem.

Serverless, open source cloud platform that executes functions in response to events at any scale.

SDK for cloud native infrastructure as code. Use your favorite language to preview and manage updates to your apps and infrastructure, and continuously deploy to any cloud (no YAML required).

A set of tools and components by Zalando to provide a convenient and audit-compliant PaaS for multiple autonomous teams on top of AWS.

Frameworks / Runtimes

Erlang/OTP

8.77K
2.4K
2d
Apache-2.0

Project Flogo is an open source ecosystem of opinionated event-driven capabilities to simplify building efficient & modern serverless functions, microservices & edge apps.

1.62K
229
78d
BSD-3-Clause

The GPars concurrency and parallelism framework for the JVM

216
50
2y 92d
n/a

DHT based high-performance microservices framework, by Bitfinex

189
15
2y 5m
MIT

Reactive Microservices for the JVM

2.48K
597
6d
Apache-2.0

A fast, lightweight and more productive microservices framework

2.9K
492
3d
Apache-2.0

Microserver is a Java 8 native, zero configuration, standards based, battle hardened library to run Java Rest Microservices via a standard Java main class. Supporting pure Microservice or Micro-monolith styles.

926
219
71d
Apache-2.0

Orbit - Virtual actor framework for building distributed systems

1.51K
158
65d
BSD-3-Clause

Fibers, Channels and Actors for the JVM

4.13K
522
2y 24d
n/a

ScaleCube Services is a high throughput, low latency reactive microservices library built to scale. it features: API-Gateways, service-discovery, service-load-balancing, the architecture supports plug-and-play service communication modules and features. built to provide performance and low-latency real-time stream-processing. its open and designed to accommodate changes. (no sidecar in a form of broker or any kind)

476
72
22d
Apache-2.0

Some tools one can use for doing microservices with Vert.x

95
55
3d
Apache-2.0

Wangle is a framework providing a set of common client/server abstractions for building services in a consistent, modular, and composable way.

2.6K
467
6d
Apache-2.0

runtime for distributed, and fault tolerant event-driven applications on the JVM.

An open forum to optimize Enterprise Java for a microservices architecture by innovating across multiple implementations and collaborating on common areas of interest with a goal of standardization.

Extensible RPC system for the JVM, used to construct high-concurrency servers.

High-performance runtime that provides significant improvements in application performance and efficiency which is ideal for microservices.

Collection of Java libraries for writing microservices that run on a fast web core powered by Netty.

Ice

Comprehensive RPC framework with support for C++, C#, Java, JavaScript, Python, and more.

A brand new microservices framework created by the Grails team

Fast & powerful microservices framework for Node.js, Java, Go and Ruby.

A lightweight open framework for building fast and efficient cloud-native Java microservices.

APIs and implementations tailored for cloud development, including Eclipse MicroProfile.

An innovative approach to packaging and running Java EE applications by packaging them with just enough of the server runtime to "java -jar" your application.

Toolkit for building reactive applications on the JVM.

Polyglot

Old apex/apex

8
26
1y 92d
MIT

Constrained application protocol implementations.

A high performance, open source, general RPC framework that puts mobile and HTTP/2 first.

C

Embeddable Event-based Asynchronous Message/HTTP Server library for C/C++

153
34
1y 5m
n/a

C library to create simple HTTP servers and Web Applications.

1.7K
228
2d
n/a

RIBS (Robust Infrastructure for Backend Systems) version 2

127
60
3y 6m
n/a

Easy to use, scalable and secure web application framework for writing web APIs in C.

Provides a generic agent oriented programming model, run time selection of locking strategies, functions that make writing daemons trivial and simplify the implementation of network servers and clients, &c.

High-performance and scalable web server.

C++

Support for multiple RPC protocols in a single library

45
20
10m
MIT

Enduro/X Middleware Platform for Distributed Transaction Processing

83
26
84d
AGPL-3.0

Pion Network Library (Boost licensed open source)

281
90
10m
BSL-1.0

A high-performance REST Toolkit written in C++

2.21K
536
3d
Apache-2.0

Corvusoft's Restbed framework brings asynchronous RESTful functionality to C++11 applications.

1.35K
324
9m
n/a

A C++11 RESTful web server library

613
141
1y 92d
MIT

C++ Programming Paradigm with Asynchronous Networking

2.74K
556
21d
Apache-2.0

C++ application development framework, to help developers create and deploy applications quickly and simply

899
108
89d
n/a

The Cap’n Proto C++ RPC implementation.

An OSGi-like C++ dynamic module system and service registry.

C++ class libraries for building network-based applications and servers.

CSharp

Microdot: An open source .NET microservices framework

1.18K
191
38d
Apache-2.0

Tye is a tool that makes developing, testing, and deploying microservices and distributed applications easier. Project Tye includes a local orchestrator to make developing microservices easier and the ability to deploy microservices to Kubernetes with minimal configuration.

2.81K
250
3d
MIT

Toolkit and runtime for building highly concurrent, distributed, and fault tolerant event-driven applications on .NET & Mono.

Lightweight web framework.

Provides a straightforward approach to building distributed high-scale computing applications, without the need to learn and apply complex concurrency or other scaling patterns.

D

Asynchronous I/O Web Framework that doesn’t get in your way, written in D.

Elixir

A specification and conveniences for composable modules between web applications

2.27K
489
6d
n/a

Framework for building HTML5 apps, API backends and distributed systems.

Erlang

Small, fast, modern HTTP server for Erlang/OTP.

6.11K
1.07K
3d
ISC

MochiWeb is an Erlang library for building lightweight HTTP servers.

1.76K
475
9m
n/a

Go

Application Server for Go (ASG)

27
7
8m
n/a

⚡️ Express inspired web framework written in Go

10.11K
446
2d
MIT

Gin is a HTTP web framework written in Go (Golang). It features a Martini-like API with much better performance -- up to 40 times faster. If you need smashing performance, get yourself some Gin.

43.53K
5K
15d
MIT

A Microservice Toolkit from The New York Times

3.3K
212
93d
Apache-2.0

Design-based APIs and microservices in Go

4.03K
445
4d
MIT

Go Router + Middleware. Your Contexts.

1.43K
118
1y 9m
MIT

a microservice framework for rapid development of micro services in Go with rich eco-system

1.72K
326
20d
Apache-2.0

A standard library for microservices.

18.66K
1.93K
11d
MIT

Go Server/API boilerplate using best practices DDD CQRS ES gRPC

303
50
20d
MIT

Nitro is a futuristic blazingly fast framework for distributed app development, IoT, edge and p2p.

14.89K
1.56K
2d
n/a

Easily consume REST APIs with Go (golang)

435
38
4y 14d
Apache-2.0

The fastest HTTP/2 Go Web Framework. AWS Lambda, gRPC, MVC, Unique Router, Websockets, Sessions, Test suite, Dependency Injection and more. A true successor of expressjs and laravel | 谢谢 https://github.com/kataras/iris/issues/1329 |

19.48K
2.14K
9d
BSD-3-Clause

Micro-service framework in Go

2.91K
281
2y 4m
MIT

Ultra performant API Gateway with middlewares

3.32K
326
57d
n/a

Like Go channels over the network

2.42K
146
4y 6m
Apache-2.0

Classy web framework for Go

11.15K
1.12K
3y 10m
MIT

Micro is an open source platform for API driven Go services development and cloud native applications

9.11K
785
2d
n/a

Transport-agnostic testing-friendly nano-framework for go micro-services

39
14
3y 10m
MIT

Idiomatic HTTP Middleware for Golang

6.83K
551
12d
MIT

Realtime/REST backend service

134
6
4y 7m
AGPL-3.0

A zero cost, faster multi-language bidirectional microservices framework in Go, like alibaba Dubbo, but with more features, Scale easily. Try it. Test it. If you feel it's better, use it! 𝐉𝐚𝐯𝐚有𝐝𝐮𝐛𝐛𝐨, 𝐆𝐨𝐥𝐚𝐧𝐠有𝐫𝐩𝐜𝐱!

5.21K
843
2d
n/a

rest for go

679
56
3y 73d
n/a

Vamp-router is a service routing, load balancing and filtering application

102
14
5y 12d
Apache-2.0

Fast and unfancy HTTP server framework for Go. Up to 10x faster than the rest.

Minimalistic and flexible request multiplexer for Go.

Web toolkit for the Go programming language.

Haskell

Haskell web framework inspired by Ruby's Sinatra, using WAI and Warp (Official Repository)

1.47K
125
66d
n/a

Main repository for the servant libraries -- DSL for describing, serving, querying, mocking, documenting web applications and more!

1.43K
317
4d
n/a

A RESTful Haskell web framework built on WAI.

2.31K
357
6d
MIT

Clojure

A concise routing library for Ring/Clojure

3.83K
252
114d
EPL-1.0

Server-side application framework for Clojure

988
47
7m
MIT

Utility library for writing microservices in Clojure, with support for Swagger and OAuth

116
14
3y 5m
Apache-2.0

Reloaded components à la carte

579
73
87d
n/a

Common basis for some of otto.de's clojure microservices

189
30
7m
Apache-2.0

JUXT's Clojure-based modular system.

Java

Airlift framework for building REST services

396
222
9d
Apache-2.0

High Performance Inter-Thread Messaging Library

13.21K
3.25K
6d
Apache-2.0

Apache Dubbo is a high-performance, java based, open source RPC framework.

34.09K
22.56K
10d
Apache-2.0

Opinionated libraries for HTTP&JSON-based RPC using Retrofit, Feign, OkHttp as clients and Jetty/Jersey as servers

61
96
7d
Apache-2.0

Lightweight framework for building java microservices

627
67
1y 8m
Apache-2.0

WSO2 Microservices Framework for Java (MSF4J)

347
340
1y 77d
Apache-2.0

The Java microservice lib. QBit is a reactive programming lib for building microservices - JSON, HTTP, WebSocket, and REST. QBit uses reactive programming to build elastic REST, and WebSockets based cloud friendly, web services. SOA evolved for mobile and cloud. ServiceDiscovery, Health, reactive StatService, events, Java idiomatic reactive programming for Microservices.

696
141
2y 10m
Apache-2.0

Lightweight and fast library for complex high-load distributed applications and Memcached-like solutions.

Open-source asynchronous HTTP/2 RPC/REST client/server library built on top of Java 8, Netty, Thrift and gRPC.

Java framework for developing ops-friendly, high-performance, RESTful web services.

RESTful services in Java. JAX-RS reference implementation.

A Kubernetes Native Java stack tailored for OpenJDK HotSpot and GraalVM, crafted from the best of breed Java libraries and standards.

Set of Java libraries that facilitate fast, efficient, evolvable and well tested HTTP applications. specific support for the Groovy language is provided.

Helps Java developers build web APIs that follow the REST architecture style.

A micro-framework for creating web applications in Java 8 with minimal effort.

Makes it easy to create stand-alone, production-grade Spring based applications.

Kotlin

Lightweight but fully-featured HTTP toolkit written in pure Kotlin that enables the serving and consuming of HTTP services in a functional and consistent way.

Framework for building asynchronous servers and clients in connected systems using the Kotlin programming language.

Scala

I/O and Microservice library for Scala

1.15K
104
2y 19d
Apache-2.0

Micro Web framework to build Servlet applications in Scala, the core part of Skinny Framework 2

56
7
9m
n/a

Open source toolkit for building REST/HTTP-based integration layers on top of Scala and Akka.

Fast, testable, Scala HTTP services built on Twitter-Server and Finagle.

A minimal, idiomatic Scala interface for HTTP

The high velocity web framework for Java and Scala.

Simple, accessible and free web micro-framework.

A suite of components enabling standardization and operationalization of Akka and Akka HTTP applications/services in a large scale, managed, cloud environment.

Node.js

Baucis enables you to build scalable REST APIs using the open source tools and standards you and your team already know.

650
94
117d
n/a

a bee-queue based minimalist toolkit for building fast, decentralized, scalable and fault tolerant microservices

24
0
74d
MIT

A Node.js library for building zero-configuration microservices.

1.8K
164
10d
MIT

full-stack javascript through microservices

225
14
3y 4m
MIT

HT is a library for making awesome microservices.

31
4
1y 11m
MIT

Micro services made easy!

8
3
3y 4m
n/a

A simple, fast framework for writing microservices in Node.js communicate using RPC / IPC

43
6
1y 101d
MIT

⚡ Serverless Framework – Build web, mobile and IoT applications with serverless architectures using AWS Lambda, Azure Functions, Google CloudFunctions & more! –

38.08K
4.5K
3d
MIT

Framework for simplifying microservices in TypeScript focusing on business logic

25
6
1y 5m
MIT

Multi-transport Node.js API server with integrated cluster capabilities and delayed tasks.

Easy to deploy Node.js projects to AWS Lambda and API Gateway.

Fast, unopinionated, minimalist web framework for Node.js

Fastify, Fast and low overhead web framework, for Node.js.

is a real-time, micro-service web framework that gives you control over your data via RESTful resources, sockets and flexible plug-ins.

A rich framework for building applications and services.

Koa

Next generation web framework for Node.js

Powerful Node.js framework for creating APIs and easily connecting to backend data sources.

Node.js module built specifically to enable you to build correct REST web services.

A microservices toolkit for Node.js

Standard library for microservices.

Perl

Cro

Libraries for creating reactive distributed systems using Perl 6.

PHP

An extensible micro-framework for PHP

2.29K
369
10m
MIT

🚀 A coroutine framework that focuses on hyperspeed and flexibility. Building microservice or middleware with ease.

3.23K
599
19d
MIT

🚀 PHP Microservice Full Coroutine Framework

5.05K
769
107d
Apache-2.0

Multi-processed, async, fault-tolerant micro-framework for writing service-oriented applications

74
7
3y 7m
n/a

API-first web framework on top of Symfony with JSON-LD, Schema.org and Hydra support.

A powerful yet easy-to-use PHP micro-framework.

Full-stack PHP framework delivered as a C-extension.

Micro-framework that helps you quickly write simple yet powerful web applications and APIs.

A set of reuseable components and a web framework.

Python

Swagger/OpenAPI First framework for Python on top of Flask with automatic endpoint validation & OAuth2 support

3.44K
595
108d
n/a

Python framework for building microservices

3.72K
372
73d
Apache-2.0

Async Python 3.6+ web server/framework | Build fast. Run fast.

14.28K
1.3K
3d
MIT

web.py is a web framework for python that is as simple as it is powerful.

5.44K
1.31K
99d
n/a

Serverless Python

11.24K
1.21K
50d
MIT

HTTP client/server for asyncio.

Fast, simple and lightweight WSGI micro web-framework for Python.

Bare-metal Python web API framework for building very fast app backends and microservices.

A microframework for Python.

Web framework and asynchronous networking library.

An event-driven networking engine.

Ruby

An opinionated framework for creating REST-like APIs in Ruby.

9.21K
1.18K
4d
MIT

Praxis is a framework that focuses on both the design and implementation aspects of creating APIs.

297
41
2y 10m
MIT

Light-weight, DRY as a desert, web framework for Ruby.

272
13
90d
MIT

Sinatra is a DSL for quickly creating web applications in Ruby with minimal effort.

Rust

An RPC framework for Rust with a focus on ease of use.

1.55K
113
13d
MIT

A summary of the current state of web programming in Rust.

Frontend / UI

A curated list of resources about everything Micro Frontends

314
29
1y 112d
n/a

Extending the microservice idea to frontend development.

API Gateways / Edge Services

Configurable API gateway that acts as a reverse proxy with a plugin system.

305
23
1y 44d
MIT

3scale API Gateway

217
119
15d
Apache-2.0

Cloud-native high-performance edge/middle/service proxy

15.31K
2.67K
3d
Apache-2.0

Consul Load-Balancing made simple

6.49K
573
34d
MIT

Gravitee.io - API Management - OpenSource API Gateway

1.06K
246
3d
Apache-2.0

HAProxy Load Balancer's development branch (mirror of git.haproxy.org)

1.68K
377
3d
n/a

An API Gateway written in Go

2.1K
268
83d
MIT

Neutrino is a software load balancer(SLB)

284
40
2y 9m
Apache-2.0

An HTTP router and reverse proxy for service composition, including use cases like Kubernetes Ingress

2.31K
236
7d
n/a

Apache Traffic Server™ is a fast, scalable and extensible HTTP/1.1 and HTTP/2 compliant caching proxy server.

1.2K
649
3d
Apache-2.0

Programmatic load balancer backed by Etcd

2.92K
228
94d
Apache-2.0

Zuul is a gateway service that provides dynamic routing, monitoring, resiliency, security, and more.

10.13K
1.95K
10d
Apache-2.0

Kubernetes-native API gateway for microservices built on Envoy.

Lightweight, general-purpose web server supporting HTTP/2, automatic TLS and easy configuration. Written in Go.

Empowers you to define routing and mediation rules in a variety of domain-specific languages, including a Java-based fluent API, Spring or Blueprint XML configuration files, and a Scala DSL.

A microservices API gateway built on Express.js.

Open platform for providing a uniform way to integrate microservices, manage traffic flow across microservices, enforce policies and aggregate telemetry data.

Simple and robust facilities for loadbalancing and high-availability to Linux system and Linux based infrastructures.

Open source management layer for APIs.

Open source ultra performance API Gateway.

Platform agnostic open source control plane for service mesh and microservices.

Resilient service mesh for cloud native apps.

Fast web application server built on top of Nginx.

Lightweight and extensible cloud native service mesh.

Modern HTTP reverse proxy with lightweight API management.

API Gateway on top of Spring MVC. Aims to provide a simple, yet effective way to route to APIs.

A distribution of Nginx with some advanced features.

A modern HTTP reverse proxy and load balancer made to deploy microservices with ease.

API management with authentication, quotas, monitoring and analytics. Free cloud offering

Configuration & Discovery

A service for autodiscovery and configuration of applications running in containers

1.07K
135
1y 6m
MPL-2.0

Portably control DNS clouds using java or bash

546
103
4y 6m
Apache-2.0

A consistent distributed data store.

3.2K
261
6y 11m
MIT

Distributed reliable key-value store for the most critical data of a distributed system

33.64K
7.13K
7d
Apache-2.0

AWS Service registry for resilient mid-tier load balancing and failover.

9.95K
2.93K
14d
Apache-2.0
461
77
3y 9d
Apache-2.0

Service registry bridge for Docker with pluggable adapters

4.42K
881
10m
MIT

Small, lightweight, api-driven dns server.

420
33
1y 8m
MIT

DNS service discovery for etcd

2.06K
309
1y 43d
MIT

The chef recipes for running and testing Airbnb's SmartStack

236
45
4m
MIT

Open-source highly-available version-controlled service configuration repository based on Git, ZooKeeper and HTTP/2.

Consul is a tool for service discovery, monitoring and configuration.

Configuration system designed for microservices which helps to separate configuration from code. The configuration for different services can have common and specific parts and can be dynamically distributed.

Provides server and client-side support for externalized configuration in a distributed system.

Coordination & Governance

Conductor is a microservices orchestration engine - https://netflix.github.io/conductor/

3.09K
957
9d
Apache-2.0

Workflows for Fission: Fast, reliable and lightweight function composition for serverless functions

297
31
4m
Apache-2.0

Fault-oblivious stateful code platform.

Define, orchestrate, and monitor business processes across microservices.

Elasticity

A cache-coherent in-memory data grid

325
31
4y 10m
LGPL-3.0

Distributed, masterless, high performance, fault tolerant data processing

1.98K
212
1y 88d
EPL-1.0

Ordasity is Boundary's library for building stateful clustered services on the JVM.

348
30
5y 11m
Apache-2.0

Redisson - Redis Java client with features of In-Memory Data Grid. Over 50 Redis based Java objects and services: Set, Multimap, SortedSet, Map, List, Queue, Deque, Semaphore, Lock, AtomicLong, Map Reduce, Publish / Subscribe, Bloom filter, Spring Cache, Tomcat, Scheduler, JCache API, Hibernate, MyBatis, RPC, local cache ...

14.96K
3.66K
3d
Apache-2.0

Open source in-memory data-grid. Allows you to distribute data and computation across servers, clusters and geographies, and to manage very large data sets or high data ingest rates. Mature technology.

cluster management framework.

Distributed in-memory platform

A framework and suite of protocols for building peer-to-peer network applications.

Deploy and manage containers (including Docker) on top of Apache Mesos at scale.

Abstracts CPU, memory, storage, and other compute resources away from machines (physical or virtual), enabling fault-tolerant and elastic distributed systems to easily be built and run effectively.

Decentralized solution for cluster membership, failure detection and orchestration.

Job Schedulers / Workload Automation

Distributed Task Queue (development branch)

16.23K
3.87K
4d
n/a

Fault tolerant job scheduler for Mesos which handles dependencies and ISO8601 based schedules

4.26K
556
2y 82d
Apache-2.0

Extensible Scheduler for Mesos Frameworks

690
109
5m
Apache-2.0

Distributed, fault tolerant job scheduling system.

Open Source solution for enterprise-level workload automation. It is used to launch executable files and shell scripts and to run database procedures automatically.

Simple orchestration tool.

Open source enterprise job scheduling system lays down ground-breaking standards for the professional automation of IT processes in advanced system environments.

Logging

a simple and fast JSON logging module for node.js services

6.49K
509
56d
n/a

Netflix's distributed Data Pipeline

747
173
4y 11m
Apache-2.0

Log Collector and Shipper.

Pluggable Log and Event Analysis Server with Alerting options.

visualize logs and time-stamped data

a tool for managing events and logs.

Messaging

Efficient reliable UDP unicast, UDP multicast, and IPC message transport

5.25K
620
3d
Apache-2.0

The pub/sub library for node backed by Redis, MongoDB, AMQP (RabbitMQ), ZeroMQ, MQTT (Mosquitto) or just plain node!

514
130
2y 113d
n/a

Premium Queue package for handling distributed jobs and messages in NodeJS.

9.67K
1.04K
2d
n/a

Crossbar.io - WAMP application router

1.78K
256
17d
AGPL-3.0

Disque is a distributed message broker

7.73K
535
4y 7m
BSD-3-Clause

The ZeroMQ Enterprise Messaging Broker

288
72
53d
MPL-2.0

A distributed, tag-based pub-sub service for modern web applications and container-driven cloud.

627
44
11m
MIT

Mirror of Apache RocketMQ

12.79K
6.97K
5m
Apache-2.0

Lightweight queuing system.

Powerful open source messaging and integration patterns server.

Faster, more reliable, easier to maintain messaging broker built from the foundations of the original ActiveMQ.

Simple, fast work queue.

A platform for developing asynchronous microservices solving the distributed data management problems.

distributed publish-subscribe messaging system.

MQTT broker as a module.

Open source message broker that implements the MQTT protocol.

Socket library that provides several common communication patterns for building distributed systems.

Lightweight brokerless messaging.

Open source, high-performance, lightweight cloud messaging system.

nsq

A realtime distributed messaging platform.

Apache Pulsar is an open-source distributed pub-sub messaging system.

Cross-platform messaging components built on AMQP.

Robust messaging for applications.

Open source, scalable, Erlang-based MQTT broker.

Monitoring & Debugging

Easy & Flexible Alerting With ElasticSearch

7.13K
1.62K
17d
Apache-2.0

Navigate and explore all of the microservices in your application in real time using the real application connections.

64
13
73d
n/a

Fast Parallel Async HTTP/SSH/TCP/UDP/Ping Client Java Library. Aggregate 100,000 APIs & send anywhere in 20 lines of code. Ping/HTTP Calls 8000 servers in 12 seconds. (Akka) www.parallec.io

775
172
2y 10m
Apache-2.0

Fast Parallel Async HTTP client as a Service to monitor and manage 10,000 web servers. (Java+Akka)

897
142
3y 7m
Apache-2.0

Trace is a visualised distributed tracing platform designed for microservices.

472
60
2y 6d
n/a

Captures network traffic and displays it in a custom Kibana dashboard for easy viewing.

The system statistics collection daemon.

A scalable distributed monitoring system for high-performance computing systems such as clusters and grids.

A Graphite & InfluxDB Dashboard and Graph Editor.

Scalable realtime graphing.

An open source, end-to-end distributed tracing

Vendor-neutral APIs and instrumentation for distributed tracing.

Service monitoring system and time series database.

Application performance monitor tool for distributed systems, especially designed for microservices, cloud native and container-based (Docker, K8s, Mesos) architectures.

Alerting for Elasticsearch.

Enterprise-class software for monitoring of networks and applications.

Distributed tracing system.

Reactivity

Alpakka Kafka connector - Alpakka is a Reactive Enterprise Integration library for Java and Scala, based on Reactive Streams and Akka.

1.27K
374
6d
n/a

An advanced, but easy to use, platform for writing functional applications in Java 8.

1.16K
124
10m
Apache-2.0

A second-generation Reactive library for building non-blocking applications on the JVM based on the Reactive Streams Specification.

API for asynchronous programming with observable streams. Available for idiomatic Java, Scala, C#, C++, Clojure, JavaScript, Python, Groovy, JRuby, and others.

Resilience

A curated list of Chaos Engineering resources.

3.95K
418
32d
CC0-1.0

Hystrix is a latency and fault tolerance library designed to isolate points of access to remote systems, services and 3rd party libraries, stop cascading failure and enable resilience in complex distributed systems where failure is inevitable.

20.66K
4.22K
2y 8d
Apache-2.0

Resilience4j is a fault tolerance library designed for Java8 and functional programming

6.19K
837
9d
Apache-2.0

Crafted malice for tormenting HTTP clients and servers.

Consensus algorithm that is designed to be easy to understand. It's equivalent to Paxos in fault-tolerance and performance.

A smart HTTP client with super powers like fault tolerance, dynamic server discovery, auto balancing and reactive recovery, designed for distributed systems.

Security

OpenID Connect Identity (OIDC) and OAuth 2.0 Provider with Pluggable Connectors

5.18K
1.06K
6d
Apache-2.0

OpenID Connect and OAuth 2.0 Framework for ASP.NET Core

7.34K
2.65K
11d
Apache-2.0

Open Source Identity and Access Management For Modern Applications and Services

7.57K
3.14K
7d
Apache-2.0

A fast, light and cloud native OAuth 2.0 authorization microservices based on light-4j

239
65
17d
Apache-2.0

Personally identifiable information (PII) storage service built to comply with GDPR.

JWT

JSON Web Tokens are an open, industry standard RFC 7519 method for representing claims securely between two parties.

Provides specific authorization flows for web applications, desktop applications, mobile phones, and living room devices. Many implementations.

A Simple Identity layer on top of OAuth 2.0.

ORY

Open source identity infrastructure and services.

System for Cross-domain Identity Management.

An encrypted datastore secure enough to hold environment and application secrets.

Serialization

Binary serialization library for efficient network communication

340
39
42d
Apache-2.0

Clojure JSON and JSON SMILE (binary json format) encoding/decoding

1.28K
133
15d
MIT

A fast JSON parser/generator for Java.

22.68K
6.05K
5d
Apache-2.0

faster JSON serialization for Go

2.69K
224
1y 58d
Apache-2.0

FST: fast java serialization drop in-replacement

1.32K
221
6m
Apache-2.0

Main Portal page for the Jackson project

6.12K
1.03K
38d
n/a

(DEPRECATED) -- moved under jackson-modules-base

90
21
4y 5m
n/a

Java binary serialization and cloning: fast, efficient, automatic

4.86K
741
2d
BSD-3-Clause

Java serialization library, proto compiler, code generator

1.54K
263
68d
Apache-2.0

Library for describing binary formats for Scala types

79
41
6y 52d
MIT

Apache data serialization system providing rich data structures in a compact, fast, binary data format.

Insanely fast data interchange format and capability-based RPC system.

Implementations of the CBOR standard (RFC 7049) in many languages.

C++11 library for serialization.

Cross-platform, language and transport-independent framework for building and consuming network services.

Efficient binary serialization format.

Storage

Transactional Distributed Database Layer

734
141
2d
Apache-2.0

Scalable datastore for metrics, events, and real-time analytics

19.97K
2.83K
2d
MIT

Distributed database fully compatible with redis protocol

866
138
4y 4m
n/a

Documentation repo

60
15
1y 4m
n/a

An open source clone of Amazon's Dynamo.

2.43K
566
3y 89d
Apache-2.0

Data warehouse infrastructure built on top of Hadoop.

Column-oriented and providing high availability with no single point of failure.

multi model distributed database.

an open-source column-oriented database management system that allows generating analytical data reports in real time.

A distributed database engineered for performance, scalability, and simplified administration.

framework for real-time analysis of large datasets.

elastic](https://twitter.com/elastic) | - | an end-to-end search and analytics platform. infinitely versatile. By combining the massively popular Elasticsearch, Logstash and Kibana we have created an end-to-end stack that delivers actionable insights in real-time from almost any type of structured and unstructured data source. Built and supported by the engineers behind each of these open source products, the Elasticsearch ELK stack makes searching and analyzing data easier than ever before. |

Fault tolerant distributed key/value storage.

Open source, distributed, in-memory database for scale-out applications.

Highly concurrent key/value datastore used for caching.

Highly scalable, distributed object storage service with integrated compute.

distributed time series database on top of HBase.

Columnar storage format that uses the record shredding and assembly algorithm described in the Dremel paper.

Open source, scalable database that makes building realtime apps easier.

Memory-centric distributed storage system, enabling reliable data sharing at memory-speed across cluster frameworks.

Testing

GoReplay is an open-source tool for capturing and replaying live HTTP traffic into a test environment in order to continuously test your system with real data. It can be used to increase confidence in code deployments, configuration changes and infrastructure changes.

13.56K
1.33K
77d
n/a

A library that tests if the implementation of a REST-API meets its specification.

150
9
87d
Apache-2.0

Record your test suite's HTTP interactions and replay them during future test runs for fast, deterministic, accurate tests.

4.95K
466
7d
n/a

Service Virtualization Solution – a combined Service Stub and Transparent Proxy

35
9
3d
GPL-3.0

Lightweight service virtualization/API simulation tool for developers and testers

1.66K
162
3d
Apache-2.0

Interactive intercepting HTTP proxy for penetration testers and software developers. ![Open-Source Software][OSS Icon] ![Freeware][Freeware Icon]

Cross-platform, multi-protocol test doubles over the wire.

Contract testing framework for HTTP APIs and non-HTTP asynchronous messaging systems.

TDD to the level of software architecture.

Flexible library for stubbing and mocking web services. Unlike general purpose mocking tools it works by creating an actual HTTP server that your code under test can connect to as it would a real web service.

Continuous Integration & Delivery

continuous integration and continuous delivery

1.2K
132
5m
GPL-2.0

GraphQL

JSON

A standard for building APIs.

REST

An API Blueprint renderer with theme support that outputs static HTML

4.53K
486
2y 47d
n/a

Simple, Comprehensive Tooling for Modern APIs

423
75
21d
MIT

📘 OpenAPI/Swagger-generated API Reference Documentation

11.42K
1.31K
3d
MIT

Beautiful static documentation for your API

31.6K
19.85K
29d
Apache-2.0

Tools for your whole API lifecycle. Use it to discuss your API with others. Generate documentation automatically. Or a test suite. Or even some code.

Simple and succinct way to describe RESTful API.

Document RESTful services by combining hand-written documentation with auto-generated snippets produced with Spring MVC Test.

Documentation/querying web interface for REST APIs.

World Wide Web

Architecture of the World Wide Web, Volume One.

Uniform Resource Identifier (URI): Generic Syntax.

URI Design and Ownership.

HTTP/1.1

HTTP/2

Hypertext Transfer Protocol Version 2.

QUIC

IETF Working Group that is chartered to deliver the next transport protocol for the Internet.

A UDP-based multiplexed and secure transport.

CoAP

The Constrained Application Protocol (CoAP) is a specialized web transfer protocol for use with constrained nodes and constrained networks in the Internet of Things.

RPC

An attempt to specify a flexible binary serialization and RPC protocol that are compatible with the philosophies of dynamic languages.

A stateless, light-weight remote procedure call (RPC) protocol.

Messaging

Advanced Message Queuing Protocol.

MQ Telemetry Transport.

Simple Text Oriented Messaging Protocol.

Security

OpenID Connect 1.0 is a simple identity layer on top of the OAuth 2.0 protocol. It allows clients to verify the identity of the end-user based on the authentication performed by an Authorization Server, as well as to obtain basic profile information about the end-user in an interoperable and REST-like manner.

Paseto is everything you love about JOSE (JWT, JWE, JWS) without any of the many design deficits that plague the JOSE standards. DRAFT

The Transport Layer Security (TLS) Protocol Version 1.2.

Datagram Transport Layer Security Version 1.2.

The OAuth 2.0 authorization framework.

JSON Web Signature (JWS) represents content secured with digital signatures or Message Authentication Codes (MACs) using JSON-based data structures.

JSON Web Token (JWT) is a compact, URL-safe means of representing claims to be transferred between two parties.

SCIM: Definitions, overview, concepts, and requirements.

SCIM: Core Schema, provides a platform-neutral schema and extension model for representing users and groups.

SCIM: Protocol, an application-level, REST protocol for provisioning and managing identity data on the web.

Service Discovery

The OpenAPI Specification Repository

18.62K
6.76K
85d
Apache-2.0

HAL

The JSON Hypertext Application Language (HAL) is a standard which establishes conventions for expressing hypermedia controls, such as links, with JSON. DRAFT

Vocabulary for Hypermedia-Driven Web APIs (W3C).

The Web Application Description Language specification.

The Web Services Description Language Version 2.0 spec.

Data Formats

A FIX standard for binary message encoding

141
44
3d
n/a

MessagePack is an extremely efficient object serialization library. It's like JSON, but very fast and small.

5.25K
468
105d
n/a

JavaScript Object Notation (JSON).

Concise Binary Object Representation (CBOR).

Binary JSON.

Standard for describing Linked Data and hypermedia relations in JSON (W3C).

Vocabularies

a JSON based format for defining the structure of JSON data.

LOV

Linked open vocabularies.

Collaborative, community activity with a mission to create, maintain, and promote schemas for structured data on the Internet, on web pages, in email messages, and beyond.

Unicode

The Unicode Consortium. The Unicode Standard, Version 8.0.0, (Mountain View, CA: The Unicode Consortium, 2015. ISBN 978-1-936213-10-8).

UTF-8, a transformation format of ISO 10646.

Organization Design / Team Dynamics

small_orange_diamond:PDF - Melvin E. Conway, Datamation magazine 1968. The original article defining Conway's Law.

Each team is responsible for one or more business functions (e.g. business capabilities). A team owns a code base consisting of one or more modules. Its code base is sized so as to not exceed the cognitive capacity of team. The team deploys its code as one or more services. A team should have exactly one service unless there is a proven need to have multiple services.

small_red_triangle:YT - DOES19 London. The "monoliths vs microservices" debate often focuses on technological aspects, ignoring strategy and team dynamics. Instead of technology, smart-thinking organizations are beginning with team cognitive load as the guiding principle for modern software. In this talk, we explain how and why, illustrated by real case studies.

Real Life Stories

Enterprise & Verticals

Framework to build flexible and modern e-commerce applications.

Articles & Papers

Model depicting the dimensions to scale a service.

small_orange_diamond:PDF - Set of requirements that may be useful in selecting a community-owned architecture benchmark to support repeatable microservices research.

A practical overview, based on real-world experience, of what one would need to know in order to build microservices.

small_orange_diamond:PDF - Consistency as logical monotonicity.

Technique to reduce the risk of introducing a new software version in production by slowly rolling out the change to a small subset of users before rolling it out to the entire infrastructure and making it available to everybody.

States that it is impossible for a distributed computer system to simultaneously provide all three of the following guarantees: Consistency, Availability and Partition tolerance.

small_orange_diamond:PDF - The serverless computing abstraction exposes several low-level operational details that make it hard for programmers to write and reason about their code. This paper sheds light on this problem by presenting λ, an operational semantics of the essence of serverless computing.

Introduction to Uber Engineering generalized approach to microservice architectures, named “Domain-Oriented Microservice Architecture” (DOMA).

You can use this guide to understand what Java microservices are, how you architect and build them. Also: A look at Java microservice libraries & common questions.

Particular way of designing software applications as suites of independently deployable services.

Critical advice about some problems regarding a microservices approach.

Guide to ponder costs and benefits of the mircoservices architectural style.

Standard for asynchronous stream processing with non-blocking back pressure.

small_orange_diamond:PDF - Resource Oriented Computing for Adaptive Systems.

small_orange_diamond:PDF - Understanding software ecosystems: a strategic modeling approach.

Approaches for managing the additional testing complexity of multiple independently deployable components.

small_orange_diamond:PDF - Describes three abstractions which combine to present a powerful programming model for building safe, modular, and efficient server software: Composable futures, services and filters.

small_orange_diamond:PDF - Overview of the state of microservices in both industrial and academia.