Skip to content

Commit

Permalink
optimized rps logic
Browse files Browse the repository at this point in the history
  • Loading branch information
Don Johnson committed Jul 7, 2024
1 parent e7a6da8 commit 3f8da0f
Showing 1 changed file with 15 additions and 5 deletions.
20 changes: 15 additions & 5 deletions src/load_testers/tcp.rs
Original file line number Diff line number Diff line change
Expand Up @@ -27,10 +27,16 @@ pub fn perform_load_test(config: &Config) -> LoadTestReport {
let start_time = Instant::now();
let success = match TcpStream::connect((&host as &str, port)) {
Ok(mut stream) => {
stream.write_all(payload.as_bytes()).unwrap();
let mut buffer = [0; 1024];
let _ = stream.read(&mut buffer).unwrap();
true
if stream.write_all(payload.as_bytes()).is_ok() {
let mut buffer = [0; 1024];
if stream.read(&mut buffer).is_ok() {
true
} else {
false
}
} else {
false
}
}
Err(_) => false,
};
Expand All @@ -48,7 +54,11 @@ pub fn perform_load_test(config: &Config) -> LoadTestReport {

let jitter_value = rng.gen_range(0..jitter);
let sleep_duration = duration_per_request + Duration::from_millis(jitter_value);
thread::sleep(sleep_duration);
let elapsed = start_time.elapsed();

if sleep_duration > elapsed {
thread::sleep(sleep_duration - elapsed);
}
}
});

Expand Down

0 comments on commit 3f8da0f

Please sign in to comment.