1
0
Fork 0
mirror of https://github.com/mfornos/awesome-microservices.git synced 2024-11-27 11:24:38 -05:00
A curated list of Microservice Architecture related principles and technologies.
Find a file
2015-05-03 16:32:46 +02:00
LICENSE Initial commit 2015-05-03 15:56:04 +02:00
README.md Moved docker 2015-05-03 16:32:46 +02:00

Awesome Microservices

A curated list of Microservice Architecture related principles and technologies.

Table of Contents

Toolkits

JVM

  • Vert.X is a tool-kit for building reactive applications on the JVM.
  • Finagle is an extensible RPC system for the JVM, used to construct high-concurrency servers.
  • Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can "just run".
  • Dropwizard is a Java framework for developing ops-friendly, high-performance, RESTful web services.
  • Spray is an open-source toolkit for building REST/HTTP-based integration layers on top of Scala and Akka.

Go

  • Kite is a micro-service framework in Go.
  • Martini classy web development in Go.
  • Negroni idiomatic HTTP Middleware for Golang.

Infrastructure

API Gateway

  • Kong is an open-source management layer for APIs.
  • Tyk is an open source, fast and scalable API gateway, portal and API management platform.
  • Camel 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.

Configuration & Discovery

  • ZooKeeper is an effort to develop and maintain an open-source server which enables highly reliable distributed coordination.
  • Etcd a highly-available key-value store for shared configuration and service discovery.
  • Consul Service discovery and configuration made easy. Distributed, highly available, and datacenter-aware.
  • Eureka is a 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.

Monitoring

  • Graphite scalable realtime graphing.
  • Riemann monitors distributed systems.
  • Suro is a distributed data pipeline which enables services for moving, aggregating, routing, storing data.

Logging

  • Fluentd is an open source data collector for unified logging layer.
  • Logstash is a tool for managing events and logs.
  • Kibana flexible analytics and visualization platform.
  • Graylog is a fully integrated open source log management platform.

Platforms

  • Docker an open platform for distributed applications for developers and sysadmins.
  • Fabric8 is an open-source integration platform for deep management of Java Containers (JVMs).

Runtimes

  • Karaf is a small OSGi based runtime which provides a lightweight container.
  • Akka is a toolkit and runtime for building highly concurrent, distributed, and resilient message-driven applications on the JVM.

In-Memory Data Grids

  • Hazelcast is an open source in-memory data grid.
  • Galaxy is an open-source high-performance in-memory data-grid.

Deployment

  • ECS easily run and manage Docker-enabled applications across a cluster of Amazon EC2 instances.
  • Capsule is a packaging and deployment tool for JVM applications.

Theory

Articles

Books

Sites

License

CC0

Acknowledgments

Table of contents generated with DocToc