vulcand

command module
v0.8.0-alpha.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 27, 2014 License: Apache-2.0 Imports: 5 Imported by: 0

README

Vulcand

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

What it's not

It's not general-purpose reverse proxy - it 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 https://www.vulcanproxy.com
status Used in production@Mailgun on moderate workloads. Under active development.
blog http://blog.vulcanproxy.com
discussions https://groups.google.com/d/forum/vulcan-proxy
roadmap roadmap.md

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
Godeps
_workspace/src/code.google.com/p/go.crypto/nacl/secretbox
Package secretbox encrypts and authenticates small messages.
Package secretbox encrypts and authenticates small messages.
_workspace/src/code.google.com/p/go.crypto/poly1305
Package poly1305 implements Poly1305 one-time message authentication code as specified in http://cr.yp.to/mac/poly1305-20050329.pdf.
Package poly1305 implements Poly1305 one-time message authentication code as specified in http://cr.yp.to/mac/poly1305-20050329.pdf.
_workspace/src/code.google.com/p/go.crypto/salsa20/salsa
Package salsa provides low-level access to functions in the Salsa family.
Package salsa provides low-level access to functions in the Salsa family.
_workspace/src/github.com/buger/goterm
Provides basic bulding blocks for advanced console UI Coordinate system: 1/1---X----> | Y | v Documentation for ANSI codes: http://en.wikipedia.org/wiki/ANSI_escape_code#Colors Inspired by: http://www.darkcoding.net/software/pretty-command-line-console-output-on-unix-in-python-and-go-lang/
Provides basic bulding blocks for advanced console UI Coordinate system: 1/1---X----> | Y | v Documentation for ANSI codes: http://en.wikipedia.org/wiki/ANSI_escape_code#Colors Inspired by: http://www.darkcoding.net/software/pretty-command-line-console-output-on-unix-in-python-and-go-lang/
_workspace/src/github.com/codahale/hdrhistogram
Package hdrhistogram provides an implementation of Gil Tene's HDR Histogram data structure.
Package hdrhistogram provides an implementation of Gil Tene's HDR Histogram data structure.
_workspace/src/github.com/codegangsta/cli
Package cli provides a minimal framework for creating and organizing command line Go applications.
Package cli provides a minimal framework for creating and organizing command line Go applications.
_workspace/src/github.com/gorilla/context
Package context stores values shared during a request lifetime.
Package context stores values shared during a request lifetime.
_workspace/src/github.com/gorilla/mux
Package gorilla/mux implements a request router and dispatcher.
Package gorilla/mux implements a request router and dispatcher.
_workspace/src/github.com/mailgun/manners
Package manners provides a wrapper for a standard net/http server that ensures all active HTTP client have completed their current request before the server shuts down.
Package manners provides a wrapper for a standard net/http server that ensures all active HTTP client have completed their current request before the server shuts down.
_workspace/src/github.com/mailgun/multibuf
package multibuf implements buffer optimized for streaming large chunks of data, multiple reads and optional partial buffering to disk.
package multibuf implements buffer optimized for streaming large chunks of data, multiple reads and optional partial buffering to disk.
_workspace/src/github.com/mailgun/oxy/cbreaker
Circuit breakers start in the Standby state first, observing responses and watching location metrics.
Circuit breakers start in the Standby state first, observing responses and watching location metrics.
_workspace/src/github.com/mailgun/oxy/connlimit
package connlimit provides control over simultaneous connections coming from the same source
package connlimit provides control over simultaneous connections coming from the same source
_workspace/src/github.com/mailgun/oxy/forward
package forwarder implements http handler that forwards requests to remote server and serves back the response
package forwarder implements http handler that forwards requests to remote server and serves back the response
_workspace/src/github.com/mailgun/oxy/ratelimit
Tokenbucket based request rate limiter
Tokenbucket based request rate limiter
_workspace/src/github.com/mailgun/oxy/roundrobin
package roundrobin implements dynamic weighted round robin load balancer http handler
package roundrobin implements dynamic weighted round robin load balancer http handler
_workspace/src/github.com/mailgun/oxy/stream
package stream provides http.Handler middleware that solves several problems when dealing with http requests: Reads the entire request and response into buffer, optionally buffering it to disk for large requests.
package stream provides http.Handler middleware that solves several problems when dealing with http requests: Reads the entire request and response into buffer, optionally buffering it to disk for large requests.
_workspace/src/github.com/mailgun/predicate
Predicate package used to create interpreted mini languages with Go syntax - mostly to define various predicates for configuration, e.g.
Predicate package used to create interpreted mini languages with Go syntax - mostly to define various predicates for configuration, e.g.
_workspace/src/github.com/mailgun/route
package route provides http package-compatible routing library.
package route provides http package-compatible routing library.
_workspace/src/gopkg.in/check.v1
Package check is a rich testing extension for Go's testing package.
Package check is a rich testing extension for Go's testing package.
Package model defines interfaces and structures controlling the proxy configuration.
Package model defines interfaces and structures controlling the proxy configuration.
etcdng
package etcdng contains the implementation of the Etcd-backed engine, where all vulcand properties are implemented as directories or keys.
package etcdng contains the implementation of the Etcd-backed engine, where all vulcand properties are implemented as directories or keys.
memng
package memng provides in memory engine implementation, mostly used for test purposes
package memng provides in memory engine implementation, mostly used for test purposes
registry
This file will be generated to include all customer specific middlewares
This file will be generated to include all customer specific middlewares
This is a home of system tests of vulcan daemon.
This is a home of system tests of vulcan daemon.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL