aquatic ws load test: add offers_per_request config var, default 10

This commit is contained in:
Joakim Frostegård 2020-08-12 00:34:39 +02:00
parent cff9b44a7f
commit 0c168404db
3 changed files with 6 additions and 7 deletions

View file

@ -194,9 +194,6 @@ To load test `aquatic_ws`, start it and then run:
./scripts/run-load-test-ws.sh
```
To achieve high throughput, it is currently necessary to sharply reduce the
poll timeout setting in the tracker, and reduce it somewhat in the load tester.
### aquatic_http_load_test
To load test `aquatic_http`, start it and then run:

View file

@ -30,6 +30,7 @@ pub struct NetworkConfig {
#[derive(Clone, Debug, Serialize, Deserialize)]
#[serde(default)]
pub struct TorrentConfig {
pub offers_per_request: usize,
pub number_of_torrents: usize,
/// Pareto shape
///
@ -73,6 +74,7 @@ impl Default for NetworkConfig {
impl Default for TorrentConfig {
fn default() -> Self {
Self {
offers_per_request: 10,
number_of_torrents: 10_000,
peer_seeder_probability: 0.25,
torrent_selection_pareto_shape: 2.0,

View file

@ -61,11 +61,11 @@ fn create_announce_request(
let info_hash_index = select_info_hash_index(config, &state, rng);
const NUM_OFFERS: usize = 2;
let mut offers = Vec::with_capacity(
config.torrents.offers_per_request
);
let mut offers = Vec::with_capacity(NUM_OFFERS);
for _ in 0..NUM_OFFERS {
for _ in 0..config.torrents.offers_per_request {
offers.push(AnnounceRequestOffer {
offer_id: OfferId(rng.gen()),
offer: JsonValue(::serde_json::json!(