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

Loïc Hoguin 405a487949 Fix proc_lib example code 12 years ago
doc 4156fa3ebb Import the acceptor code from Cowboy 13 years ago
examples 109c63d0e7 Remove ranch_listener and replace ListenerPid by Ref 12 years ago
guide 405a487949 Fix proc_lib example code 12 years ago
src 8203188155 Merge branch 'server-state-recover' of git://github.com/fishcakez/ranch 12 years ago
test 8203188155 Merge branch 'server-state-recover' of git://github.com/fishcakez/ranch 12 years ago
.gitignore 4156fa3ebb Import the acceptor code from Cowboy 13 years ago
AUTHORS e4833a4ec6 Update AUTHORS file 12 years ago
LICENSE 4156fa3ebb Import the acceptor code from Cowboy 13 years ago
Makefile 265e372fd2 Makefile verbosity tweaks 12 years ago
README.md db9889b91c Add #ninenines IRC channel + support options to the README 12 years ago
ROADMAP.md f685fe97ce Update ROADMAP 12 years ago

README.md

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.

Getting started

  • Read the guide
  • Look at the examples in the examples/ directory
  • Build API documentation with make docs; open doc/index.html

Support