Directories ¶
Path | Synopsis |
---|---|
go-etcd
|
|
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. |
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. |
vulcan
|
|
circuitbreaker
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. |
endpoint
Endpoints - final destination of the http request
|
Endpoints - final destination of the http request |
errors
Utility functions for producing errorneous http responses
|
Utility functions for producing errorneous http responses |
headers
Constants with common HTTP headers
|
Constants with common HTTP headers |
limit
Interfaces for request limiting
|
Interfaces for request limiting |
limit/connlimit
Simultaneous connection limiter
|
Simultaneous connection limiter |
limit/tokenbucket
Tokenbucket based request rate limiter
|
Tokenbucket based request rate limiter |
loadbalance
Load balancers control how requests are distributed among multiple endpoints.
|
Load balancers control how requests are distributed among multiple endpoints. |
loadbalance/roundrobin
Dynamic weighted round robin load balancer
|
Dynamic weighted round robin load balancer |
location/httploc
HTTP location with load balancing and pluggable middlewares
|
HTTP location with load balancing and pluggable middlewares |
metrics
In memory request performance metrics
|
In memory request performance metrics |
middleware
Middlewares can modify or intercept requests and responses
|
Middlewares can modify or intercept requests and responses |
netutils
Network related utilities
|
Network related utilities |
request
Wrapper around http.Request with additional features
|
Wrapper around http.Request with additional features |
template
Package template consolidates various templating utilities used throughout different parts of vulcan.
|
Package template consolidates various templating utilities used throughout different parts of vulcan. |
threshold
Package threshold contains predicates that can define various request thresholds Examples: * RequestMethod() == "GET" triggers action when request method equals "GET" * IsNetworkError() - triggers action on network errors * RequestMethod() == "GET" && Attempts <= 2 && (IsNetworkError() || ResponseCode() == 408) This predicate triggers for GET requests with maximum 2 attempts on network errors or when upstream returns special http response code 408
|
Package threshold contains predicates that can define various request thresholds Examples: * RequestMethod() == "GET" triggers action when request method equals "GET" * IsNetworkError() - triggers action on network errors * RequestMethod() == "GET" && Attempts <= 2 && (IsNetworkError() || ResponseCode() == 408) This predicate triggers for GET requests with maximum 2 attempts on network errors or when upstream returns special http response code 408 |
vulcand
|
|
backend
Package backend defines interfaces and structures controlling the proxy configuration and changes.
|
Package backend defines interfaces and structures controlling the proxy configuration and changes. |
backend/etcdbackend
Etcd implementation of the backend, where all vulcand properties are implemented as directories or keys.
|
Etcd implementation of the backend, where all vulcand properties are implemented as directories or keys. |
backend/membackend
Provides in memory backend implementation, mostly used for test purposes
|
Provides in memory backend implementation, mostly used for test purposes |
plugin/registry
This file will be generated to include all customer specific middlewares
|
This file will be generated to include all customer specific middlewares |
Click to show internal directories.
Click to hide internal directories.