Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
awesome-microservices
A curated list of Microservices Architecture related principles and technologies.
https://github.com/eric-erki/awesome-microservices
Last synced: 4 days ago
JSON representation
-
Platforms
- Mantl - Platform for rapidly deploying globally distributed services.
- OpenWhisk - Serverless, open source cloud platform that executes functions in response to events at any scale.
- STUPS - A set of tools and components by Zalando to provide a convenient and audit-compliant PaaS for multiple autonomous teams on top of AWS.
- Express Serverless - An open source, Kubernetes-native, microservices and serverless platform.
- Express Serverless - An open source, Kubernetes-native, microservices and serverless platform.
- Lightbend ![c - Platform for building scalable reactive systems on the JVM.
- Netflix OSS - Netflix open source software ecosystem.
- Express Serverless - An open source, Kubernetes-native, microservices and serverless platform.
- Hook.io - Open source provider of microservice and webhook hosting.
- Express Serverless - An open source, Kubernetes-native, microservices and serverless platform.
-
Capabilities
-
API Gateways / Edge Services
- data and control plane
- data and control plane
- data and control plane
- Amalgam8 - Content-based routing fabric for polyglot microservices.
- Caddy - Extensible HTTP/2 web server with automatic HTTPS.
- Express Gateway - A microservices API gateway built on Express.js.
- HAProxy - Reliable, high Performance TCP/HTTP load balancer.
- Istio - An open platform to connect, manage, and secure microservices.
- Linkerd - Resilient service mesh for cloud native apps.
- Otoroshi - Modern HTTP reverse proxy with lightweight API management.
- Spring Cloud Gateway - API Gateway on top of Spring MVC. Aims to provide a simple, yet effective way to route to APIs.
- Tyk - Open source, fast and scalable API gateway, portal and API management platform.
- data and control plane
- data and control plane
- data and control plane
- data and control plane
- data and control plane
- data and control plane
- data and control plane
- data and control plane
- data and control plane
- data and control plane
- data and control plane
- data and control plane
- data and control plane
- data and control plane
- data and control plane
- data and control plane
- data and control plane
- data and control plane
- data and control plane
- data and control plane
- data and control plane
- data and control plane
-
Storage
- Manta - Highly scalable, distributed object storage service with integrated compute.
- Apache Hive - Data warehouse infrastructure built on top of Hadoop.
- CockroachDB ![c - A cloud-native SQL database modelled after Google Spanner.
- Elliptics - Fault tolerant distributed key/value storage.
- Manta - Highly scalable, distributed object storage service with integrated compute.
- Parquet - Columnar storage format available to any project in the Hadoop ecosystem, regardless of the choice of data processing framework, data model or programming language.
- Couchbase - A distributed database engineered for performance, scalability, and simplified administration.
-
Messaging
-
Monitoring & Debugging
- Watcher - Alerting for Elasticsearch.
- IOpipe ![c - Application performance monitoring for Amazon Lambda.
- Jaeger - An open source, end-to-end distributed tracing
- OpenTracing - Vendor-neutral APIs and instrumentation for distributed tracing.
- Riemann - Monitors distributed systems.
- Sensu - Monitoring for today's infrastructure.
- SkyWalking - Application performance monitor tool for distributed systems, especially designed for microservices, cloud native and container-based (Docker, K8s, Mesos) architectures.
-
Configuration & Discovery
- Consul - Service discovery and configuration made easy. Distributed, highly available, and datacenter-aware.
- Eureka - REST based service that is primarily used in the AWS cloud for locating services for the purpose of load balancing and failover of middle-tier servers.
- ZooKeeper - Open source server which enables highly reliable distributed coordination.
-
Coordination & Governance
- AWS Step Functions ![c - Coordinate the components of distributed applications and microservices using visual workflows.
- Azuqua ![c - Orchestration and governance platform for distributed applications.
- Cadence - Fault-oblivious stateful code platform.
- Zeebe - Define, orchestrate, and monitor business processes across microservices.
-
Elasticity
- Galaxy - Open source high-performance in-memory data-grid.
- Grape - Realtime processing pipeline.
- Mesos - 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.
- Nomad - Distributed, highly available, datacenter-aware scheduler.
-
Job Schedulers / Workload Automation
- JobScheduler - Open Source solution for enterprise-level workload automation. It is used to launch executable files and shell scripts and to run database procedures automatically.
- Schedulix - Open source enterprise job scheduling system lays down ground-breaking standards for the professional automation of IT processes in advanced system environments.
-
Logging
- Suro - Distributed data pipeline which enables services for moving, aggregating, routing, storing data.
-
Resilience
- Raft Consensus - Consensus algorithm that is designed to be easy to understand. It's equivalent to Paxos in fault-tolerance and performance.
- Resilient HTTP - 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 - Libraries, products, and tools implementing current OpenID specifications and related specs.
- Vault - Secures, stores, and tightly controls access to tokens, passwords, certificates, API keys, and other secrets in modern computing.
-
Serialization
- Avro - Apache data serialization system providing rich data structures in a compact, fast, binary data format.
- Cap’n Proto - Insanely fast data interchange format and capability-based RPC system.
- CBOR - Implementations of the CBOR standard (RFC 7049) in many languages.
- Jackson - A multi-purpose Java library for processing JSON data format.
-
Testing
- Mitmproxy - An interactive console program that allows traffic flows to be intercepted, inspected, modified and replayed.
- Mountebank - Cross-platform, multi-protocol test doubles over the wire.
- Spring Cloud Contract - TDD to the level of software architecture.
-
-
Frameworks / Runtimes
- Baratine - Platform for building a network of loosely-coupled POJO microservices.
- Eclipse Microprofile - 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.
- Ice - Comprehensive RPC framework with support for C++, C#, Java, JavaScript, Python, and more.
- Open Liberty - A lightweight open framework for building fast and efficient cloud-native Java microservices.
- SmallRye - APIs and implementations tailored for cloud development, including Eclipse MicroProfile.
- Thorntail - 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.
- Baratine - Platform for building a network of loosely-coupled POJO microservices.
- Baratine - Platform for building a network of loosely-coupled POJO microservices.
- Baratine - Platform for building a network of loosely-coupled POJO microservices.
- Baratine - Platform for building a network of loosely-coupled POJO microservices.
- Baratine - Platform for building a network of loosely-coupled POJO microservices.
- Baratine - Platform for building a network of loosely-coupled POJO microservices.
-
Service Toolkits
-
Polyglot
- CoAP - Constrained application protocol implementations.
-
C
- Kore - Easy to use web application framework for writing scalable web APIs in C.
-
C++
- Cap’n Proto RPC - The Cap’n Proto C++ RPC implementation.
- C++ Micro Services - An OSGi-like C++ dynamic module system and service registry.
-
CSharp
- Nancy - Lightweight web framework.
-
Go
-
Java VM
- Modularity - JUXT's Clojure-based modular system.
- Dropwizard - Java framework for developing ops-friendly, high-performance, RESTful web services.
- Jersey - RESTful services in Java. JAX-RS reference implementation.
- Ratpack - Set of Java libraries that facilitate fast, efficient, evolvable and well tested HTTP applications. specific support for the Groovy language is provided.
- Spark - A micro-framework for creating web applications in Java 8 with minimal effort.
- Http4k - 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.
- Ktor - Framework for building asynchronous servers and clients in connected systems using the Kotlin programming language.
- Akka HTTP - Open source toolkit for building REST/HTTP-based integration layers on top of Scala and Akka.
- Play - The high velocity web framework for Java and Scala.
- Armeria - Open-source asynchronous HTTP/2 RPC/REST client/server library built on top of Java 8, Netty, Thrift and gRPC.
- Restlet - Helps Java developers build web APIs that follow the REST architecture style.
-
Node.js
- Baucis - To build and maintain scalable HATEOAS/Level 3 REST APIs.
- ClaudiaJS - Easy to deploy Node.js projects to AWS Lambda and API Gateway.
- Express - Fast, unopinionated, minimalist web framework for Node.js
- Restify - Node.js module built specifically to enable you to build correct REST web services.
- StdLib - Standard library for microservices.
-
PHP
- API Platform - API-first web framework on top of Symfony with JSON-LD, Schema.org and Hydra support.
- Fat-Free - A powerful yet easy-to-use PHP micro-framework.
- Symfony - Micro-framework based on the Symfony components.
-
Python
-
Ruby
- Hanami - A modern web framework for Ruby.
-
Perl
- Mojolicious - Next generation web framework for Perl.
-
-
Web API Modeling & Documentation
-
JSON
- JSON:API - A specification for how a client should request that resources be fetched or modified, and how a server should respond to those requests.
-
REST
- API Blueprint - 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.
-
-
Standards / Recommendations
-
CoAP
- RFC7252 - 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
- BERT-RPC 1.0 - An attempt to specify a flexible binary serialization and RPC protocol that are compatible with the philosophies of dynamic languages.
-
Messaging
- STOMP - Simple Text Oriented Messaging Protocol.
-
Service Discovery
- Hydra - Specifications for interoperable, hypermedia-driven Web APIs.
-
Data Formats
-
Unicode
- UNIV8 - The Unicode Consortium. The Unicode Standard, Version 8.0.0, (Mountain View, CA: The Unicode Consortium, 2015. ISBN 978-1-936213-10-8).
-
Vocabularies
- LOV - Linked open vocabularies.
-
-
Real Life Stories
-
Theory
-
Articles & Papers
- CAP Theorem - States that it is impossible for a distributed computer system to simultaneously provide all three of the following guarantees: Consistency, Availability and Partition tolerance.
- A sidecar for your service mesh - A short service mesh introduction.
- Benchmark Requirements for Microservices Architecture Research - Set of requirements that may be useful in selecting a community-owned architecture benchmark to support repeatable microservices research.
- Building Microservices? Here is What You Should Know - A practical overview, based on real-world experience, of what one would need to know in order to build Microservices.
- Formal Foundations of Serverless Computing - 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.
- Microservices and SOA - Similarities, differences, and where we go from here.
- Microservices RefCard - Getting started with microservices.
- Reactive Streams - Initiative to provide a standard for asynchronous stream processing with non-blocking back pressure.
- ROCAS - Resource Oriented Computing for Adaptive Systems.
- Service Discovery in a Microservice Architecture - Overview of discovery and registration patterns.
- Formal Foundations of Serverless Computing - 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.
-
Talks
- Bla Bla Microservices Bla Bla - A talk at the O’Reilly Software Architecture Conference, April 2016.
- Challenges in Implementing MicroServices - A presentation at GOTO 2015 by Fred George.
- Microservices - A presentation at GOTO Berlin 2014 by Martin Fowler.
-
Tutorials
- Developing a RESTful Microservice in Python - A story of how an aging Java project was replaced with a microservice built with Python and Flask.
- Developing and Testing Microservices With Docker - An example of the processes involved in creating a simple Docker-packaged Node microservice.
- Game On! - Microservices architecture explained in the context of an old-school text-based adventure game.
- Microservices without the Servers - Step by step demo-driven talk about serverless architecture.
- Part 1 - in-c-part-2-consistent-message-delivery/), [Part 3](http://insidethecpu.com/2015/08/14/microservices-in-c-part-3-queue-pool-sizing/), [Part 4](http://insidethecpu.com/2015/08/28/microservices-in-c-part-4-scaling-out/), [Part 5](http://insidethecpu.com/2015/09/11/microservices-in-c-part-5-autoscaling/).
- Microservices with Python, RabbitMQ and Nameko
- Using Packer and Ansible to build immutable infrastructure
-
Books
- Building Microservices - Building Microservices: Designing Fine-grained Systems. Sam Newman. Preview Edition.
- Istio in Action - Teaches you how to implement a full-featured Istio-based service mesh to manage a microservices application.
- Microservices in Action - A practical book about building and deploying microservice-based applications.
- Microservice Patterns - Teaches how to build applications with the microservice architecture and how to refactor a monolithic application to a microservices.
- Microservices from Theory to Practice - Microservices from Theory to Practice: Creating Applications in IBM Bluemix Using the Microservices Approach. IBM Redbooks publication.
- Migrating to Cloud Native Application Architectures - This O’Reilly report defines the unique characteristics of cloud native application architectures such as microservices and twelve-factor applications.
- Pulsar in Action - A practical book about developing microservice-based applications using Apache Pulsar by Manning Press.
- Testing Microservices with Mountebank - Provides a testing strategy using mountebank for service virtualization, promoting independent releases of Microservices
- The New Stack eBook Series - A Comprehensive Overview of the Docker and Container Ecosystem.
- The Tao of Microservices - Teaches the path to understanding how to apply microservices architecture with your own real-world projects.
- Micro Frontends in Action - A practical guide that teaches how to develop large software projects with multiple independent teams.
-
Sites & Organizations
- Cloud Native Computing Foundation - The Cloud Native Computing Foundation builds sustainable ecosystems and fosters a community around a constellation of high-quality projects that orchestrate containers as part of a microservices architecture.
- CNCF Cloud Native Interactive Landscape - Interactive landscape of cloud native technologies.
-
-
Enterprise & Verticals
-
Unicode
- Commercetools ![c - Headless commerce platform.
- Flamingo - Framework to build flexible and modern e-commerce applications.
- Interact ![c - CRM microservices for rapid delivery of tailored solutions.
- Predix ![c - Industrial microservices platform.
- Skava ![c - Provides microservices for all the functions of your store, and the glue to hold them together.
- Moltin ![c - E-commerce API for developers.
-
-
Emerging Technologies
-
Sites & Organizations
- BigchainDB - The scalable blockchain database.
- CEPTR - A recomposable medium for distributed social computing, a semantic self-describing protocol stack, and a cretor of fractal coherence contexts for biomimetic computing.
- Edgware Fabric - Lightweight, agile service bus for systems at the edge of the network, in the physical world.
- Hyperledger - Open source collaborative effort created to advance cross-industry blockchain technologies. It is a global collaboration, hosted by The Linux Foundation, including leaders in finance, banking, IoT, supply chain, manufacturing and technology.
- Luna - Visual and textual functional programming language with a focus on productivity, collaboration and development ergonomics.
- Blocknet - The Blocknet makes possible to deliver microservices over a blockchain-based P2P network architecture.
-
-
Contributing
-
Sites & Organizations
- Contribution Guidelines
- open an issue - microservices/pulls) with your additions.
-
Programming Languages
Categories
Sub Categories
API Gateways / Edge Services
34
Unicode
13
Books
11
Java VM
11
Articles & Papers
11
Sites & Organizations
11
Monitoring & Debugging
7
Storage
7
Tutorials
7
Messaging
6
Node.js
5
Coordination & Governance
4
Elasticity
4
Serialization
4
Testing
3
Talks
3
PHP
3
Configuration & Discovery
3
C++
2
Go
2
Security
2
Python
2
Resilience
2
Data Formats
2
Job Schedulers / Workload Automation
2
Vocabularies
1
CoAP
1
JSON
1
Polyglot
1
REST
1
RPC
1
Perl
1
CSharp
1
Service Discovery
1
Logging
1
Ruby
1
C
1
Keywords