Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ConfigurationWatcher ¶ added in v2.1.0
type ConfigurationWatcher struct {
// contains filtered or unexported fields
}
ConfigurationWatcher watches configuration changes.
func NewConfigurationWatcher ¶ added in v2.1.0
func NewConfigurationWatcher(routinesPool *safe.Pool, pvd provider.Provider, providersThrottleDuration time.Duration) *ConfigurationWatcher
NewConfigurationWatcher creates a new ConfigurationWatcher.
func (*ConfigurationWatcher) AddListener ¶ added in v2.1.0
func (c *ConfigurationWatcher) AddListener(listener func(dynamic.Configuration))
AddListener adds a new listener function used when new configuration is provided
func (*ConfigurationWatcher) Start ¶ added in v2.1.0
func (c *ConfigurationWatcher) Start()
Start the configuration watcher.
func (*ConfigurationWatcher) Stop ¶ added in v2.1.0
func (c *ConfigurationWatcher) Stop()
Stop the configuration watcher.
type Server ¶
type Server struct {
// contains filtered or unexported fields
}
Server is the reverse-proxy/load-balancer engine
func NewServer ¶
func NewServer(routinesPool *safe.Pool, entryPoints TCPEntryPoints, watcher *ConfigurationWatcher, chainBuilder *middleware.ChainBuilder, accessLoggerMiddleware *accesslog.Handler) *Server
NewServer returns an initialized Server.
type TCPEntryPoint ¶
type TCPEntryPoint struct {
// contains filtered or unexported fields
}
TCPEntryPoint is the TCP server
func NewTCPEntryPoint ¶
func NewTCPEntryPoint(ctx context.Context, configuration *static.EntryPoint) (*TCPEntryPoint, error)
NewTCPEntryPoint creates a new TCPEntryPoint
func (*TCPEntryPoint) Shutdown ¶
func (e *TCPEntryPoint) Shutdown(ctx context.Context)
Shutdown stops the TCP connections
func (*TCPEntryPoint) StartTCP ¶ added in v2.1.0
func (e *TCPEntryPoint) StartTCP(ctx context.Context)
StartTCP starts the TCP server.
func (*TCPEntryPoint) SwitchRouter ¶ added in v2.1.0
func (e *TCPEntryPoint) SwitchRouter(rt *tcp.Router)
SwitchRouter switches the TCP router handler.
type TCPEntryPoints ¶
type TCPEntryPoints map[string]*TCPEntryPoint
TCPEntryPoints holds a map of TCPEntryPoint (the entrypoint names being the keys)
func NewTCPEntryPoints ¶ added in v2.1.0
func NewTCPEntryPoints(entryPointsConfig static.EntryPoints) (TCPEntryPoints, error)
NewTCPEntryPoints creates a new TCPEntryPoints.
func (TCPEntryPoints) Start ¶ added in v2.1.0
func (eps TCPEntryPoints) Start()
Start the server entry points.
func (TCPEntryPoints) Stop ¶ added in v2.1.0
func (eps TCPEntryPoints) Stop()
Stop the server entry points.
type TCPRouterFactory ¶ added in v2.1.0
type TCPRouterFactory struct {
// contains filtered or unexported fields
}
TCPRouterFactory the factory of TCP routers.
func NewTCPRouterFactory ¶ added in v2.1.0
func NewTCPRouterFactory(staticConfiguration static.Configuration, managerFactory *service.ManagerFactory, tlsManager *tls.Manager, chainBuilder *middleware.ChainBuilder) *TCPRouterFactory
NewTCPRouterFactory creates a new TCPRouterFactory
func (*TCPRouterFactory) CreateTCPRouters ¶ added in v2.1.0
func (f *TCPRouterFactory) CreateTCPRouters(conf dynamic.Configuration) map[string]*tcpCore.Router
CreateTCPRouters creates new TCPRouters