vulcand

Programmatic load balancer backed by Etcd

  • 所有者: vulcand/vulcand
  • 平台:
  • 许可证: Apache License 2.0
  • 分类:
  • 主题:
  • 喜欢:
    0
      比较:

Github星跟踪图

Vulcand

Vulcand is a programmatic extendable proxy for microservices and API management.
It is inspired by Hystrix and powers Mailgun microservices infrastructure.

Focus and priorities

Vulcand is focused on microservices and API use-cases.

Features

  • Uses Etcd as a configuration backend.
  • API and command line tool.
  • Pluggable middlewares.
  • Support for canary deploys, realtime metrics and resiliency.

Vulcan diagram

Project info
------------, documentation, http://vulcand.github.io/, :-------------, :-----------------------------------------------------------------, status, Used in production@Mailgun on moderate workloads. Under active development., discussions, https://groups.google.com/d/forum/vulcan-proxy, roadmap, roadmap.md, build status, Build Status, Opentracing Support

Vulcand has support for open tracing via the Jaeger client
libraries
. Users who wish
to use tracing support should use the --enableJaegerTracing flag and must
either run the Jaeger client listening on localhost:6831/udp or set the
environment variables JAEGER_AGENT_HOST and JAEGER_AGENT_POST. (See the
Jaeger client libraries
for all available configuration environment variables.

When enabled vulcand will create 2 spans, one span called vulcand which
covers the entire downstream request. The other span called middleware which
only spans the processing of the middleware before the request is routed
downstream.

Aliased Expressions

When running vulcand in a kubernetes DaemonSet vulcand needs to know requests
from the local node can match Host("localhost") rules. This --aliases flag
allows an author of a vulcand DaemonSet to tell vulcand the name of the node it's
currently running on, such that vulcand correctly routes requests for
Host("localhost"). The --aliases flag allows the user to pass in multiple
aliases separated by comma's.

Example

$ vulcand --aliases 'Host("localhost")=Host("192.168.1.1")'

主要指标

概览
名称与所有者vulcand/vulcand
主编程语言Go
编程语言Makefile (语言数: 4)
平台
许可证Apache License 2.0
所有者活动
创建于2014-03-27 05:42:43
推送于2024-07-27 08:36:18
最后一次提交2023-07-10 09:40:38
发布数13
最新版本名称v0.9.2 (发布于 )
第一版名称v0.8.0-alpha (发布于 )
用户参与
星数3.1k
关注者数81
派生数222
提交数723
已启用问题?
问题数187
打开的问题数67
拉请求数162
打开的拉请求数2
关闭的拉请求数30
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?