Commit graph

67 commits

Author SHA1 Message Date
Val Packett
2d18eb6686 udp: fix msghdr creation on musl libc
Right now building for musl also requires updating glommio to a git
version.
2024-03-30 10:31:16 +01:00
Joakim Frostegård
61bc4f0d9d udp: swarm: extract_response_peers: improve docs, add .copied() to iters 2024-02-11 01:02:16 +01:00
Joakim Frostegård
f455e58251 udp: swarm cleaning: send statistics messages after releasing locks 2024-02-11 00:59:23 +01:00
Joakim Frostegård
14c973f72f udp: Config.socket_workers: make value 0 auto-use available vCPUs 2024-02-10 23:07:59 +01:00
Joakim Frostegård
f4ef9fcfc9 udp: fix test_connection_validator 2024-02-10 22:56:37 +01:00
Joakim Frostegård
680da048b8 udp: add ConnectionValidator.update_elapsed, call regularly
This is faster than doing it for each request
2024-02-10 22:47:36 +01:00
Joakim Frostegård
94247b8e35 udp: mio: don't recalculate PeerUntil every announce request 2024-02-10 22:22:19 +01:00
Joakim Frostegård
19533b3f8e udp: mio: make send_response a method 2024-02-10 22:13:01 +01:00
Joakim Frostegård
7116fdd862 udp: io_uring: improve docs 2024-02-10 21:55:39 +01:00
Joakim Frostegård
b1908329e5 udp: improve config docs and key order 2024-02-10 21:48:55 +01:00
Joakim Frostegård
ebf4ecbf6a udp: fix torrent count statistics 2024-02-10 21:45:34 +01:00
Joakim Frostegård
68e951cf79 Improve udp README and latest load test md 2024-02-10 21:29:12 +01:00
Joakim Frostegård
a7ad3266d8 Update UDP benchmarks 2024-02-10 21:22:49 +01:00
Joakim Frostegård
2c7bcf71ad bencher: change to account for new aquatic_udp implementation 2024-02-10 18:51:13 +01:00
Joakim Frostegård
358c8951c0 udp: improve udp uring code 2024-02-10 18:06:42 +01:00
Joakim Frostegård
6d784c25e9 udp: remove pending scrape config stuff, adjust io uring code 2024-02-10 15:56:34 +01:00
Joakim Frostegård
71a3cb9a5a udp: remove socket_worker config, adjust other code, fix statistics 2024-02-10 15:54:26 +01:00
Joakim Frostegård
c4fd3c9e83 udp: add cleaning worker 2024-02-10 15:48:09 +01:00
Joakim Frostegård
7fa143964e udp: remove swarm worker and related logic 2024-02-10 11:40:11 +01:00
Joakim Frostegård
a2e1dd4eef udp: use shared swarm state in io uring implementation 2024-02-10 11:35:52 +01:00
Joakim Frostegård
2da966098f WIP: use shared swarm state in mio worker 2024-02-10 11:21:48 +01:00
Joakim Frostegård
53497308f1 udp: create file with thread-shared torrent map implementation 2024-02-10 10:01:45 +01:00
Joakim Frostegård
c980c23ffc bencher: also bench aquatic_udp with io_uring 2024-02-09 01:21:24 +01:00
Joakim Frostegård
37e4514427 udp: change default max_response_peers to 30 2024-02-08 10:08:31 +01:00
Joakim Frostegård
7ceb01f1ae udp: change default ring_size to 128 2024-02-08 10:07:44 +01:00
Joakim Frostegård
e705c03981 Explicity use IndexMap::swap_remove to silence warnings 2024-02-06 18:34:17 +01:00
Joakim Frostegård
40e33d8af1 fix prometheus timeout mask metrics 2024-02-04 00:03:01 +01:00
Joakim Frostegård
437f2def7d aquatic_common: feature-gate cpu pinning, remove hwloc feature 2024-02-03 23:16:45 +01:00
Joakim Frostegård
d7e06468c3 http: quit if any worker thread quits 2024-02-03 22:38:05 +01:00
Joakim Frostegård
4ca73630c4 Move prometheus endpoint spawner from udp to common crate 2024-02-03 22:07:56 +01:00
Joakim Frostegård
3513b714b4 udp: consistently use NonZeroU16 for announce request port 2024-02-03 11:46:38 +01:00
Joakim Frostegård
b4e27903dc udp: actually register global metrics handler 2024-02-02 14:46:42 +01:00
Joakim Frostegård
bbb4c5e411 udp: remove ConnectedRequestSender::any_full method 2024-02-02 14:09:46 +01:00
Joakim Frostegård
c48a83b06a udp: reorder declarations in common.rs 2024-02-02 13:55:57 +01:00
Joakim Frostegård
be5165bcf2 udp: mio socket worker: make send_response plain fn 2024-02-02 13:48:06 +01:00
Joakim Frostegård
405bbaca93 udp: improve statistics structs
- Now, workers don't need to keep track of which atomic usize
  to update
- Additionally, prometheus now gets separate information per
  socket worker
2024-02-02 13:39:46 +01:00
Joakim Frostegård
e2e525b560 udp: move PeerStatus from common.rs to swarm worker 2024-02-01 23:25:43 +01:00
Joakim Frostegård
216bb93088 udp: improve WorkerType Display implementation 2024-01-29 22:27:03 +01:00
Joakim Frostegård
1967d8aa3e udp: return errors from threads instead of panicking in some cases 2024-01-29 22:17:30 +01:00
Joakim Frostegård
ae75d0cbe4 udp socket worker: fix warning 2024-01-29 22:12:08 +01:00
Joakim Frostegård
6dec985d45 udp: store prometheus exporter thread handle, periodically render 2024-01-29 22:09:20 +01:00
Joakim Frostegård
8f838098aa udp: replace PanicSentinel with loop over JoinHandles 2024-01-29 21:45:50 +01:00
Joakim Frostegård
1c59972834 udp protocol: rename "write" and "from_bytes" methods 2024-01-29 19:38:12 +01:00
Joakim Frostegård
c5e09e8106 README files: mention installing build-essential 2024-01-27 18:12:21 +01:00
Joakim Frostegård
7d4ba6940b Improve README files 2024-01-27 17:46:49 +01:00
Joakim Frostegård
9d1bba5e92 udp: fix/silence clippy warnings 2024-01-20 10:08:53 +01:00
Joakim Frostegård
5401eaf85f Run cargo clippy --fix and cargo fmt 2024-01-20 09:56:14 +01:00
Joakim Frostegård
0c03048ce8 udp: update metrics crate 2024-01-20 09:42:17 +01:00
Joakim Frostegård
1a6b4345d4 udp: remove thingbuf in favor of crossbeam channel
thingbuf didn't have obvious performance advantages and is a lot less
mature. Furthermore, it doesn't support anything like crossbeam
Receiver::try_iter, which is prefereable now that announce responses
can be sent to any socket worker.
2024-01-20 09:41:07 +01:00
Joakim Frostegård
e77c9f46e7 udp: store torrents with few peers without an extra heap alloc 2024-01-20 09:40:09 +01:00