Sleep between broadcasting

This commit is contained in:
Kitaiti Makoto 2022-05-07 04:50:58 +09:00
parent b9ea83a602
commit 4d3db9af73

View File

@ -8,7 +8,10 @@ use rocket::{
response::{Responder, Response}, response::{Responder, Response},
Outcome, Outcome,
}; };
use tokio::runtime; use tokio::{
runtime,
time::{sleep, Duration},
};
use tracing::{debug, warn}; use tracing::{debug, warn};
use self::sign::Signable; use self::sign::Signable;
@ -156,6 +159,9 @@ where
let rx = rx.clone(); let rx = rx.clone();
let handle = rt.spawn(async move { let handle = rt.spawn(async move {
while let Ok(request_builder) = rx.recv_async().await { while let Ok(request_builder) = rx.recv_async().await {
// After broadcasting, target instance sends request to this instance.
// Sleep here in order to reduce requests at once
sleep(Duration::from_millis(500)).await;
let _ = request_builder let _ = request_builder
.send() .send()
.await .await