{"id":13434996,"url":"https://github.com/ninenines/ranch","last_synced_at":"2025-05-12T11:19:39.255Z","repository":{"id":2933338,"uuid":"3944995","full_name":"ninenines/ranch","owner":"ninenines","description":"Socket acceptor pool for TCP protocols.","archived":false,"fork":false,"pushed_at":"2025-02-17T11:20:38.000Z","size":1334,"stargazers_count":1206,"open_issues_count":5,"forks_count":335,"subscribers_count":93,"default_branch":"master","last_synced_at":"2025-05-11T11:11:35.260Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Erlang","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"isc","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ninenines.png","metadata":{"files":{"readme":"README.asciidoc","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2012-04-05T23:06:16.000Z","updated_at":"2025-05-09T17:42:57.000Z","dependencies_parsed_at":"2024-06-18T10:42:18.438Z","dependency_job_id":"8be9a829-a149-480d-b110-32d626ab690c","html_url":"https://github.com/ninenines/ranch","commit_stats":{"total_commits":461,"total_committers":45,"mean_commits":"10.244444444444444","dds":"0.30585683297180044","last_synced_commit":"a8f31f3f0274f7e5a6b58fa6b6090c3160c4d023"},"previous_names":[],"tags_count":37,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ninenines%2Franch","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ninenines%2Franch/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ninenines%2Franch/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ninenines%2Franch/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ninenines","download_url":"https://codeload.github.com/ninenines/ranch/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253554089,"owners_count":21926614,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-07-31T03:00:29.715Z","updated_at":"2025-05-11T11:11:40.031Z","avatar_url":"https://github.com/ninenines.png","language":"Erlang","funding_links":[],"categories":["Erlang","网络","Networking"],"sub_categories":[],"readme":"= Ranch\n\nRanch is a socket acceptor pool for TCP protocols.\n\n== Goals\n\nRanch aims to provide everything you need to accept TCP connections with\na *small* code base and *low latency* while being easy to use directly\nas an application or to *embed* into your own.\n\nRanch provides a *modular* design, letting you choose which transport\nand protocol are going to be used for a particular listener. Listeners\naccept and manage connections on one port, and include facilities to\nlimit the number of *concurrent* connections. Connections are sorted\ninto *pools*, each pool having a different configurable limit.\n\nRanch also allows you to *upgrade* the acceptor pool without having\nto close any of the currently opened sockets.\n\n== Online documentation\n\n* https://ninenines.eu/docs/en/ranch/2.2/guide[User guide]\n* https://ninenines.eu/docs/en/ranch/2.2/manual[Function reference]\n\n== Offline documentation\n\n* While still online, run `make docs`\n* User guide available in `doc/` in PDF and HTML formats\n* Function reference man pages available in `doc/man3/` and `doc/man7/`\n* Run `make install-docs` to install man pages on your system\n* Full documentation in Asciidoc available in `doc/src/`\n* Examples available in `examples/`\n\n== Getting help\n\n* https://discord.gg/x25nNq2fFE[Discord server]\n* https://github.com/ninenines/ranch/issues[Issues tracker]\n* https://ninenines.eu/services[Commercial Support]\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fninenines%2Franch","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fninenines%2Franch","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fninenines%2Franch/lists"}