Joakim Frostegård
4e5750346d
Update TODO
2020-08-13 04:04:15 +02:00
Joakim Frostegård
88423976c4
aquatic_http, aquatic_ws: add option for printing statistics
...
statistics are on number of peers per torrent
2020-08-13 03:58:28 +02:00
Joakim Frostegård
23a562c1e5
README: make load test section more concise
2020-08-13 02:24:56 +02:00
Joakim Frostegård
ed6179cc63
Update TODO
2020-08-13 02:09:01 +02:00
Joakim Frostegård
6b3d9e00d8
aquatic_udp: drop unused channel senders & receivers
2020-08-13 02:08:19 +02:00
Joakim Frostegård
b9ab650138
README: don't say http and ws only support single request worker
2020-08-13 01:52:01 +02:00
Joakim Frostegård
2b4cd2dea1
aquatic_http: support multiple request workers
2020-08-13 01:50:18 +02:00
Joakim Frostegård
875eb122c7
aquatic_ws: support multiple request workers
2020-08-13 01:50:01 +02:00
Joakim Frostegård
cf0623e302
aquatic_ws_protocol: fix warning about JsonValue Arbitrary impl
...
Now it is clearer that only a single value is ever generated
2020-08-13 01:05:20 +02:00
Joakim Frostegård
77ac17dec4
Run cargo update
2020-08-13 01:00:54 +02:00
Joakim Frostegård
0aa781a79c
aquatic_ws_load_test: fix unused variable compiler warnings
2020-08-13 00:54:14 +02:00
Joakim Frostegård
67c346f88e
aquatic_http_load_test: fix compiler unused variable warnings
2020-08-13 00:53:26 +02:00
Joakim Frostegård
74e1ecf384
aquatic_http_protocol: remove unused utility function "urldecode"
2020-08-13 00:51:56 +02:00
Joakim Frostegård
639b8db072
README: refer to aquatic master executable in instructions
2020-08-13 00:45:19 +02:00
Joakim Frostegård
17844d05e3
Update TODO
2020-08-13 00:18:42 +02:00
Joakim Frostegård
beea0e7d97
add scripts/build-aquatic.sh
2020-08-13 00:15:43 +02:00
Joakim Frostegård
9efc1fc66a
add aquatic crate with master executable, refactor cli_helpers
2020-08-13 00:13:01 +02:00
Joakim Frostegård
c69b09ab9c
aquatic ws protocol: improve Arbitrary impl for JsonValue
2020-08-12 05:22:37 +02:00
Joakim Frostegård
acc1a0fd74
aquatic_ws: update tests to use simd-json
2020-08-12 05:14:27 +02:00
Joakim Frostegård
8c4d3e5cb9
Update TODO
2020-08-12 04:45:54 +02:00
Joakim Frostegård
6f955235ea
aquatic http: log at debug level for unrecognized keys in request parse
...
"downloaded" and "uploaded" occur all the time since they are
part of the specification
2020-08-12 04:38:47 +02:00
Joakim Frostegård
bc5cd90371
aquatic http: use serde_bencode for deserialization
...
bendy seems not to manage lack of trailing newline
2020-08-12 04:26:09 +02:00
Joakim Frostegård
7a96313173
aquatic_http_protocol: send host header for scrape requests too
2020-08-12 04:23:26 +02:00
Joakim Frostegård
e6a74c5bfe
aquatic http load test: send Host header, downloaded&uploaded keys
2020-08-12 04:08:43 +02:00
Joakim Frostegård
01a3e7795a
aquatic ws load test: set default num_connections to 16
2020-08-12 01:38:29 +02:00
Joakim Frostegård
884a2aa67d
aquatic ws: deserialize OutMessage properly
...
Performance seems to be about the same
2020-08-12 01:24:28 +02:00
Joakim Frostegård
dea88020a5
aquatic ws load test: use longer json value when sending answer
2020-08-12 00:52:07 +02:00
Joakim Frostegård
0c168404db
aquatic ws load test: add offers_per_request config var, default 10
2020-08-12 00:42:21 +02:00
Joakim Frostegård
cff9b44a7f
move RUSTFLAGS gen to own file instead of setting in each script
2020-08-12 00:28:03 +02:00
Joakim Frostegård
b3caa7ab7b
Update TODO
2020-08-12 00:20:00 +02:00
Joakim Frostegård
29e3d695a0
Update TODO
2020-08-12 00:13:36 +02:00
Joakim Frostegård
9af4e4663d
aquatic_ws: send responses for every event, wake mio for responses
2020-08-11 23:58:00 +02:00
Joakim Frostegård
de1a299f1e
aquatic_ws: InMessage::to_ws_message: don't take ownership
2020-08-11 23:24:46 +02:00
Joakim Frostegård
63e5fe11c9
aquatic http protocol: delete obsoleted bench_request_from_path
2020-08-11 23:06:05 +02:00
Joakim Frostegård
f2d697011b
Don't use target-cpu native etc in scripts/test.sh
2020-08-11 23:04:28 +02:00
Joakim Frostegård
56bc028a44
aquatic_ws: OutMessage and InMessage simd-json fixes
...
* use simd-json in OutMessage deserialization
* take ownership in InMessage deserialization to avoid bugs
* Update benchmark results, benchmark was broken
* Compile simd-json even if simd is not on, so that rust-analyzer
works
2020-08-11 23:02:19 +02:00
Joakim Frostegård
8dfe524421
Update TODO
2020-08-11 06:45:47 +02:00
Joakim Frostegård
5d40954936
aquatic_ws: deserialize InMessage with simd-json for performance
...
From 18% to 13% CPU time during load test run.
Criterion benchmark of deserialization got about 90% improvement.
2020-08-11 06:32:51 +02:00
Joakim Frostegård
539cf03f93
Update README (aquatic http load test section)
2020-08-11 06:31:09 +02:00
Joakim Frostegård
99724c7e5d
aquatic_ws: add bench for InMessage::from_ws_message, take ws msg by ref
2020-08-11 05:36:29 +02:00
Joakim Frostegård
74a538963f
aquatic_http_protocol: urlencode/urldecode Request.key
...
About 11% performance regression for Request::from_bytes
2020-08-10 04:37:01 +02:00
Joakim Frostegård
0a0b57a9e8
Update TODO
2020-08-10 03:57:16 +02:00
Joakim Frostegård
1a3ab54b3f
aquatic_ws: when removing connection, reregister from poll
2020-08-10 03:51:08 +02:00
Joakim Frostegård
fbcd5aa7c9
Update TODO
2020-08-10 03:18:06 +02:00
Joakim Frostegård
cce7bd7150
aquatic_http: send responses for each event, use mio poll waker
...
This means
* less fluctuation in number of responses send per second
* longer poll timeouts can be used since poll is woken when
responses are available for sending
* drain-like method used to fetch responses from response
channel, meaning responses added while iterating won't
be processed
2020-08-10 02:53:15 +02:00
Joakim Frostegård
1d2dfe3fe1
aquatic_ws_protocol: add comment OutMessage::from_ws_message
2020-08-09 04:27:06 +02:00
Joakim Frostegård
4bffecc345
aquatic_http_load_test: deregister socket before removing it
2020-08-09 04:26:08 +02:00
Joakim Frostegård
72183d7fc2
Update TODO
2020-08-09 04:25:29 +02:00
Joakim Frostegård
d9282defbc
aquatic_http: deregister connections before removing them
2020-08-09 02:30:40 +02:00
Joakim Frostegård
1b2b4f0eb5
aquatic_http_protocol: add test for Request serde, fix Request.write bug
2020-08-09 01:19:47 +02:00