Documentation
¶
Index ¶
Constants ¶
View Source
const ( Connection messageType = iota Disconnection Packet )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct {
// TargetServer is the address of the target server to connect to
TargetServer string
// Port is the local port to listen on
Port string
// InitialDelay specifies the delay after establishing a new connection
// before it can be used
InitialDelay time.Duration
// Timeout specifies the read/write timeout for connections
Timeout time.Duration
// MaxConnections specifies the maximum number of target connections
// to maintain in the connection pool
MaxConnections int
// ReconnectBackoff specifies the initial backoff time for reconnection attempts
// This will increase exponentially with failed attempts
ReconnectBackoff time.Duration
// HealthCheckInterval specifies how often to check connection health
HealthCheckInterval time.Duration
// QueueSize specifies the size of the request queue
QueueSize int
// MaxRequestSize limits the size of incoming requests
MaxRequestSize int
// MaxResponseSize limits the size of responses from the target
MaxResponseSize int
// IdleTimeout specifies how long a connection can remain idle
// before it's closed
IdleTimeout time.Duration
}
Config holds all configuration options for the multiplexer
type Multiplexer ¶
type Multiplexer struct {
// contains filtered or unexported fields
}
func New ¶
func New(targetServer, port string, messageReader message.Reader, delay time.Duration, timeout time.Duration) Multiplexer
New creates a multiplexer with default config
func NewWithConfig ¶
func NewWithConfig(config Config, messageReader message.Reader) Multiplexer
NewWithConfig creates a multiplexer with detailed configuration
func (*Multiplexer) Close ¶
func (mux *Multiplexer) Close() error
Close gracefully shuts down the multiplexer
func (*Multiplexer) Start ¶
func (mux *Multiplexer) Start() error
Click to show internal directories.
Click to hide internal directories.