From 7fb68ef52d003bd4561932e5c9ff76878ee8b8d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joakim=20Frosteg=C3=A5rd?= Date: Mon, 4 Jul 2022 11:59:21 +0200 Subject: [PATCH] README and architecture svg: rename request worker to swarm worker --- README.md | 10 +++++----- documents/aquatic-architecture-2022-02-02.svg | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 000e02b..dd277a1 100644 --- a/README.md +++ b/README.md @@ -72,7 +72,7 @@ respective configuration files. #### Workers To increase performance, number of worker threads can be increased. The sum of -`socket_workers` and `request_workers` should equal the total number of CPU cores +`socket_workers` and `swarm_workers` should equal the total number of CPU cores that you want to use. Recommended proportions: @@ -92,7 +92,7 @@ that you want to use. Recommended proportions: - + @@ -180,7 +180,7 @@ This is the most mature of the implementations. I consider it ready for producti ![UDP BitTorrent tracker throughput comparison](./documents/aquatic-udp-load-test-illustration-2021-11-28.png) -More details are available [here](./documents/aquatic-udp-load-test-2021-11-28.pdf). +More details are available [here](./documents/aquatic-udp-load-test-2021-11-28.pdf). Please note that request workers have been renamed to swarm workers. #### Optimisation attempts that didn't work out @@ -213,7 +213,7 @@ fine. ![HTTP BitTorrent tracker throughput comparison](./documents/aquatic-http-load-test-illustration-2022-04-11.png) -More details are available [here](./documents/aquatic-http-load-test-2022-04-11.pdf). +More details are available [here](./documents/aquatic-http-load-test-2022-04-11.pdf). Please note that request workers have been renamed to swarm workers. ### aquatic_ws: WebTorrent tracker @@ -231,7 +231,7 @@ fine. ![WebTorrent tracker throughput comparison](./documents/aquatic-ws-load-test-illustration-2022-03-29.png) -More details are available [here](./documents/aquatic-ws-load-test-2022-03-29.pdf). +More details are available [here](./documents/aquatic-ws-load-test-2022-03-29.pdf). Please note that request workers have been renamed to swarm workers. ## Load testing diff --git a/documents/aquatic-architecture-2022-02-02.svg b/documents/aquatic-architecture-2022-02-02.svg index 58fc08c..4d00454 100644 --- a/documents/aquatic-architecture-2022-02-02.svg +++ b/documents/aquatic-architecture-2022-02-02.svg @@ -1,3 +1,3 @@ -
Socket worker
Socket worker
Socket worker
Socket worker
Responses
Responses
Socket worker
Socket worker
Requests
Requests
Socket
Socket
Request worker
Request worker
Request worker
Request worker
Socket
Socket
Socket
Socket
Responses
Responses
Sharded torrent state
Sharded to...
Sharded torrent state
Sharded to...
  • Establish connections, or in the case of aquatic_udp, validate source IPs
  • Receive and parse requests from peers
  • Run access list checks
  • Send on announce requests to the responsible request worker
  • Split scrape requests to match state shards and send them to the request workers
  • Receive responses from the request workers, serialize them and send them to peers

Establish connections, or in the case of aqua...
  • Receive announce and scrape requests from the socket workers
  • Update torrent state if appropriate, generate responses
  • Send responses back to the sending socket workers

Receive announce and scrape requests from the...
Connection state
Connection...
Connection state
Connection...
Connection state
Connection...
Requests
Requests
Text is not SVG - cannot display
\ No newline at end of file +
Socket worker
Socket worker
Socket worker
Socket worker
Responses
Responses
Socket worker
Socket worker
Requests
Requests
Socket
Socket
Swarm worker
Swarm worker
Swarm worker
Swarm worker
Socket
Socket
Socket
Socket
Responses
Responses
Sharded torrent state
Sharded to...
Sharded torrent state
Sharded to...
  • Establish connections, or in the case of aquatic_udp, validate source IPs
  • Receive and parse requests from peers
  • Run access list checks
  • Send on announce requests to the responsible swarm worker
  • Split scrape requests to match state shards and send them to the swarm workers
  • Receive responses from the swarm workers, serialize them and send them to peers

Establish connections, or in the case of aqua...
  • Receive announce and scrape requests from the socket workers
  • Update torrent state if appropriate, generate responses
  • Send responses back to the sending socket workers

Receive announce and scrape requests from the...
Connection state
Connection...
Connection state
Connection...
Connection state
Connection...
Requests
Requests
Text is not SVG - cannot display
\ No newline at end of file
>=20
Request workersSwarm workers 1 2 3