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
Joakim Frostegård
2893fffd20
aquatic_http: use const LISTENER_TOKEN for clarity
2020-08-09 00:44:39 +02:00
Joakim Frostegård
0a23b62bd5
aquatic ws load test: gen random PeerId per connection
...
Necessary for multiple workers
2020-08-09 00:42:09 +02:00
Joakim Frostegård
2d3761fee2
impl Copy for LogLevel, remove some cloning
2020-08-09 00:27:05 +02:00
Joakim Frostegård
0637f83daa
aquatic_ws: rewrite failing serialization, add tests
...
Use different approach to action fields and info_hash vec, fixing
failing tests
2020-08-09 00:26:26 +02:00
Joakim Frostegård
c8512e1cdf
Update TODO
2020-08-07 01:15:04 +02:00
Joakim Frostegård
ea8b37b4d5
aquatic_ws_protocol: add quickcheck tests for message serde
2020-08-06 23:34:33 +02:00
Joakim Frostegård
cc7fff7d6c
Update TODO
2020-08-06 23:34:29 +02:00
Joakim Frostegård
94bc33ea72
Update TODO
2020-08-03 07:27:55 +02:00
Joakim Frostegård
6f618bb013
aquatic_ws_load_test: get answer sending to work with wt-tracker
2020-08-03 07:02:42 +02:00
Joakim Frostegård
01fdf40a02
aquatic_ws_load_test: send num_want and better offer fake type
...
This means wt-tracker starts sending offers
2020-08-03 06:52:29 +02:00
Joakim Frostegård
aee97b77a1
Update TODO
2020-08-03 05:49:22 +02:00
Joakim Frostegård
e916780438
aquatic_ws_load_test: for single connection, use same PeerId
2020-08-03 05:27:40 +02:00
Joakim Frostegård
7733ee98ca
Update TODO
2020-08-03 05:15:48 +02:00
Joakim Frostegård
9f445c7c03
aquatic_ws_load_test: fix multiple issues with implementation
2020-08-03 05:15:24 +02:00
Joakim Frostegård
5523c87634
Update TODO
2020-08-03 00:23:25 +02:00
Joakim Frostegård
edeeee8f51
aquatic http load test: don't stop looping after reading response
...
It is important to keep reading until EWOULDBLOCK event
2020-08-03 00:22:22 +02:00
Joakim Frostegård
e88ecec9c7
aquatic http protocol: fix failure response serialization test failure
2020-08-02 22:11:55 +02:00
Joakim Frostegård
d36f97f272
aquatic http load test: remove connection if read 0 bytes
2020-08-02 21:42:35 +02:00
Joakim Frostegård
8d58f8bb70
init logger in aquatic_cli_helpers crate
2020-08-02 21:21:58 +02:00
Joakim Frostegård
427c0bc7c3
aquatic_http: add keep_alive setting (default true)
...
This might be good for performance in the real world. It also
enables fairer load test comparisons with opentracker, which
in my understanding drops connections after sending responses.
2020-08-02 20:06:49 +02:00
Joakim Frostegård
8caae958fd
Update TODO
2020-08-02 20:06:46 +02:00
Joakim Frostegård
bed57717ba
aquatic_http_load_test: fix formatting
2020-08-02 19:26:47 +02:00
Joakim Frostegård
c8b94adab5
aquatic_http: remove Connection.shutdown fn
2020-08-02 19:26:12 +02:00
Joakim Frostegård
c5194cf9d1
Update TODO
2020-08-02 19:25:30 +02:00
Joakim Frostegård
a02035d659
aquatic http load test: improve connection creation, default config
2020-08-02 19:11:14 +02:00
Joakim Frostegård
8a3f3fa330
aquatic http load test: add option for closing conn after response
2020-08-02 18:10:19 +02:00
Joakim Frostegård
f9d85117b1
aquatic_http_protocol: optimize response peer deserialization
...
Hopefully, now response peer vec only needs to be allocated once
2020-08-02 11:34:09 +02:00
Joakim Frostegård
b289e1f590
aquatic http load test: remove unused slab dependency
2020-08-02 11:04:47 +02:00
Joakim Frostegård
b53b7ed332
Update TODO
2020-08-02 11:04:43 +02:00
Joakim Frostegård
e1d8983bb6
aquatic http load test: clean up, minor reformatting
2020-08-02 10:41:07 +02:00
Joakim Frostegård
93a7ad0344
aquatic http load test: only send request when appropriate, other fixes
2020-08-02 10:24:27 +02:00
Joakim Frostegård
49414e9006
aquatic http load test: parse requests properly, fix issues
2020-08-02 10:04:24 +02:00
Joakim Frostegård
a18596544f
aquatic http protocol: allow non-existing peers in Response
...
Really, this is to allow missing peers6
2020-08-02 10:03:42 +02:00
Joakim Frostegård
fe887e1de5
aquatic http protocol: add deserialize impl for responses
2020-08-02 09:27:44 +02:00
Joakim Frostegård
d487bf3ebb
Update TODO
2020-08-02 09:27:14 +02:00
Joakim Frostegård
cb3ec8cbf1
WIP: get http load test into better (but bad) state
...
Is now able to maintain correspondence with aquatic_http
and opentracker
2020-08-02 06:38:36 +02:00