ThousandIsland.Transports.TCP (Thousand Island v0.4.5) View Source
Defines a ThousandIsland.Transport implementation based on clear TCP sockets
as provided by Erlang's :gen_tcp module. For the most part, users of Thousand
Island will only ever need to deal with this module via transport_options
passed to ThousandIsland at startup time. A complete list of such options
is defined via the t::gen_tcp.listen_option() type. This list can be somewhat
difficult to decipher; by far the most common value to pass to this transport
is the following:
ip: The IP to listen on (defaults to all interfaces). IPs should be described in tuple form (ie:ip: {1, 2, 3, 4}). The value:loopbackcan be used to only bind to localhost. On platforms which support it (macOS and Linux at a minimum, likely others), you can also bind to a Unix domain socket by specifying a value ofip: {:local, "/path/to/socket"}. Note that the port must be set to0, and that the socket is not removed from the filesystem after the server shuts down.
Unless overridden, this module uses the following default options:
backlog: 1024,
nodelay: true,
linger: {true, 30},
send_timeout: 30_000,
send_timeout_close: true,
reuseaddr: trueThe following options are required for the proper operation of Thousand Island
and cannot be overridden at startup (though they can be set via calls to setopts/2)
mode: :binary,
active: false