Documentation
¶
Overview ¶
Package tcp provides a simple multiplexer over TCP. implemented by influxdb: https://github.com/influxdata/influxdb/tree/master/tcp
Index ¶
Constants ¶
const ( // DefaultTimeout is the default length of time to wait for first byte. DefaultTimeout = 30 * time.Second )
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Mux ¶
type Mux struct { // The amount of time to wait for the first header byte. Timeout time.Duration // contains filtered or unexported fields }
Mux multiplexes a network connection.
func (*Mux) DefaultListener ¶
DefaultListener will return a net.Listener that will pass-through any connections with non-registered values for the first byte of the connection. The connections returned from this listener's Accept() method will replay the first byte of the connection as a short first Read().
This can be used to pass to an HTTP server, so long as there are no conflicts with registered listener bytes and the first character of the HTTP request: 71 ('G') for GET, etc.
func (*Mux) Listen ¶
Listen returns a listener identified by header. Any connection accepted by mux is multiplexed based on the initial header byte.
func (*Mux) Start ¶
Start handles connections from ln and multiplexes then across registered listeners.
func (*Mux) WithLogger ¶
WithLogger use customed logger