mirror https://github.com/ninenines/ranch

juhlig b986eae828 Remove pre-21 ssl version switches from tests 5 years ago
doc 30604262b5 Use transport options in ranch_transport:listen/1 callbacks 6 years ago
ebin f07391b5eb Create one ranch_conns_sup per num_acceptor 6 years ago
examples 3ea575d868 Remove Socket argument from ranch_protocol:start_link 6 years ago
src 30604262b5 Use transport options in ranch_transport:listen/1 callbacks 6 years ago
test b986eae828 Remove pre-21 ssl version switches from tests 5 years ago
.gitignore 98908c894a Update .gitignore 8 years ago
LICENSE 8eaae552ec Ranch 1.5.0 7 years ago
Makefile e92171a8f8 Use ssl:handshake instead of ssl:ssl_accept 6 years ago
README.asciidoc 7423a7bb6d Update the migration guide for 1.7 6 years ago
erlang.mk f8c8a0065c Update Erlang.mk to fix an issue with LATEST_ERLANG_OTP 6 years ago

README.asciidoc

= Ranch

Ranch is a socket acceptor pool for TCP protocols.

== Goals

Ranch aims to provide everything you need to accept TCP connections with
a *small* code base and *low latency* while being easy to use directly
as an application or to *embed* into your own.

Ranch provides a *modular* design, letting you choose which transport
and protocol are going to be used for a particular listener. Listeners
accept and manage connections on one port, and include facilities to
limit the number of *concurrent* connections. Connections are sorted
into *pools*, each pool having a different configurable limit.

Ranch also allows you to *upgrade* the acceptor pool without having
to close any of the currently opened sockets.

== Online documentation

* https://ninenines.eu/docs/en/ranch/1.7/guide[User guide]
* https://ninenines.eu/docs/en/ranch/1.7/manual[Function reference]

== Offline documentation

* While still online, run `make docs`
* User guide available in `doc/` in PDF and HTML formats
* Function reference man pages available in `doc/man3/` and `doc/man7/`
* Run `make install-docs` to install man pages on your system
* Full documentation in Asciidoc available in `doc/src/`
* Examples available in `examples/`

== Getting help

* Official IRC Channel: #ninenines on irc.freenode.net
* https://github.com/ninenines/ranch/issues[Issues tracker]
* https://ninenines.eu/services[Commercial Support]