Displaying 1 to 20 from 45 results

serf - Service orchestration and management tool

  •    Go

Serf is a decentralized solution for service discovery and orchestration that is lightweight, highly available, and fault tolerant.Serf runs on Linux, Mac OS X, and Windows. An efficient and lightweight gossip protocol is used to communicate with other nodes. Serf can detect node failures and notify the rest of the cluster. An event system is built on top of Serf, letting you use Serf's gossip protocol to propagate events such as deploys, configuration changes, etc. Serf is completely masterless with no single point of failure.

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

  •    Go

etcd is a distributed, consistent key-value store for shared configuration and service discovery. It is simple, secure, fast and reliable. it uses the Raft consensus algorithm to manage a highly-available replicated log.

rpcx - A RPC service framework based on net/rpc like alibaba Dubbo and weibo Motan

  •    Go

go get -u -v github.com/smallnest/rpcx/...rpcx is a distributed RPC framework like Alibaba Dubbo and Weibo Motan. It is based on Go net/rpc and provides extra governance features.

micro - A microservice toolkit for distributed systems development

  •    Go

Micro is a microservice toolkit. Its purpose is to simplify distributed systems development.Check out go-micro if you want to start writing services in Go now or ja-micro for Java. Examples of how to use micro with other languages can be found in examples/sidecar.




containerpilot - A service for autodiscovery and configuration of applications running in containers

  •    Go

An init system for cloud-native distributed applications that automates the process of service discovery, configuration, and lifecycle management inside the container, so you can focus on your apps.We can write our new applications to do that, but existing apps will need some help. We can wrap each application in a shell script that registers itself with the discovery service easily enough, but watching for changes to that service and ensuring that health checks are being made is more complicated. We can put a second process in the container, but as soon as we do that we need an init system running inside the container as well.

skydock - Service discovery via DNS for docker

  •    Go

Docker supports DNS based service discovery now. You should use the Docker implementation instead of this project. Skydock was built at a time when Docker did not support DNS discovery or auto registration. I'll keep the repo up for past years and as reference for others but don't use it if you have a recent version of Docker.Skydock monitors docker events when containers start, stop, die, kill, etc and inserts records into a dynamic DNS server skydns. This allows standard DNS queries for services running inside docker containers. Because lets face it, if you have to modify your application code to work with other service discovery solutions you might as well just give up. DNS just works and it works well. Also you cannot be expected to modify application code that you don't own. Passing service urls via the cli or in static config files (nginx) will not be possible if your service discovery solution requires a client library just to fetch an IP.

Istio - An open platform to connect, manage, and secure microservices

  •    Go

An open platform to connect, manage, and secure microservices. Istio is an open platform for providing a uniform way to integrate microservices, manage traffic flow across microservices, enforce policies and aggregate telemetry data. Istio's control plane provides an abstraction layer over the underlying cluster management platform, such as Kubernetes, Mesos, etc.

microdot - Microdot: An open source .NET microservices framework

  •    CSharp

Microdot is an open source .NET framework that answers a lot of the needs for easily creating microservices. Read on for an overview of the framework, and check the wiki for more details and a tutorial for building your first service.


Consul - Tool for Service Discovery, Monitoring and Configuration

  •    Go

Consul is a tool for service discovery and configuration. Consul is distributed, highly available, and extremely scalable. Consul makes it simple for services to register themselves and to discover other services via a DNS or HTTP interface. Register external services such as SaaS providers as well. It prevents routing requests to unhealthy hosts and enables services to easily provide circuit breakers.

Registrator - Service registry bridge for Docker with pluggable adapters

  •    Go

Service registry bridge for Docker. Registrator automatically registers and deregisters services for any Docker container by inspecting containers as they come online. Registrator supports pluggable service registries, which currently includes Consul, etcd and SkyDNS 2.

CoreDNS - DNS server that chains plugins

  •    Go

CoreDNS (written in Go) chains plugins. Each plugin performs a DNS function, such as Kubernetes service discovery, Prometheus metrics or rewriting queries. It is a Cloud Native Computing Foundation inception level project.

Doozer - A consistent distributed data store

  •    Go

Doozer is a highly-available, completely consistent store for small amounts of extremely important data. When the data changes, it can notify connected clients immediately (no polling), making it ideal for infrequently-updated data for which clients want real-time updates. Doozer is good for name service, database master elections, and configuration data shared between several machines.

marathon-lb - Marathon-lb is a service discovery & load balancing tool for DC/OS

  •    Python

Marathon-lb is a tool for managing HAProxy, by consuming Marathon's app state. HAProxy is a fast, efficient, battle-tested, highly available load balancer with many advanced features which power a number of high-profile websites. Take a look at the marathon-lb wiki for example usage, templates, and more.

Noah - Lightweight node/service registry inspired by Apache Zookeeper

  •    Ruby

Noah is a lightweight node/service registry inspired by Apache Zookeeper. It provides support for Service registry, Node registry, Configuration Registry, Group Services, Watches.

SkyDNS - DNS service discovery for etcd

  •    Go

SkyDNS is a distributed service for announcement and discovery of services built on top of etcd. It utilizes DNS queries to discover available services. This is done by leveraging SRV records in DNS, with special meaning given to subdomains, priorities and weights.

Dora-RPC - DoraRPC is an RPC For the PHP MicroService by The Swoole

  •    PHP

For complex projects separation, the project can be better maintained by the API project management.

docker-grand-ambassador

  •    Go

This is a fully dynamic docker link ambassador.The problem with linking is that links are static. When a container which is being linked to is restarted it very likely has a new IP address. Any container which is linked to this restarted container will also need to be restarted in order to pick up this new IP address. Therefore linked containers can often have a cascading effect of needing to restart many containers in order to update links.

linkerd-examples - Examples of how to configure and run linkerd

  •    Go

This repo contains subdirectories with various examples for how to use linkerd and namerd. Each of the subdirectories is described below.Provides a self-contained docker-compose environment which shows how to use consul as a service discovery back-end with linkerd.

abstract-ns - Abstract name service traits for rust

  •    Rust

This rust crate provides just abstract traits which may be used to build interoperable implementations of name dicovery. We want abstract_ns to have implementations not only for DNS-based name discovery but also Zookeeper, Eureka, Etcd, Consul, and whatever other thing you might imagine. All of them easily configured and interchangeable.