Skip to content

Commit a693c2d

Browse files
committed
Fix formatting
Signed-off-by: Janne Pelkonen <[email protected]>
1 parent 8f2b9f0 commit a693c2d

File tree

2 files changed

+59
-22
lines changed

2 files changed

+59
-22
lines changed

gotham/benches/file_handler.rs

+56-21
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,27 @@
1-
use std::{collections::HashMap, fs::File, io::{BufWriter, Write}, net::{SocketAddr, ToSocketAddrs}, sync::atomic::{AtomicU64, Ordering::Relaxed}, time::{Duration, SystemTime}};
1+
use std::{
2+
collections::HashMap,
3+
fs::File,
4+
io::{BufWriter, Write},
5+
net::{SocketAddr, ToSocketAddrs},
6+
sync::atomic::{AtomicU64, Ordering::Relaxed},
7+
time::{Duration, SystemTime},
8+
};
29

310
use criterion::{criterion_group, criterion_main, BenchmarkId, Criterion, Throughput};
411
use futures_util::future;
512
use gotham::{
6-
bind_server, handler::FileOptions, router::{
13+
bind_server,
14+
handler::FileOptions,
15+
router::{
716
build_simple_router,
817
builder::{DefineSingleRoute, DrawRoutes},
9-
}
18+
},
1019
};
1120
use tempfile::TempDir;
12-
use tokio::{net::TcpListener, runtime::{self, Runtime}};
21+
use tokio::{
22+
net::TcpListener,
23+
runtime::{self, Runtime},
24+
};
1325

1426
struct BenchServer {
1527
runtime: Runtime,
@@ -25,22 +37,27 @@ impl BenchServer {
2537
fn new() -> anyhow::Result<Self> {
2638
let tmp = TempDir::new()?;
2739
// temporary datafiles
28-
let sizes = [10, 17, 24 ].iter().filter_map(|sz| {
29-
let size = 1 << sz;
30-
mk_tmp(&tmp, size).ok()
31-
}).collect();
40+
let sizes = [10, 17, 24]
41+
.iter()
42+
.filter_map(|sz| {
43+
let size = 1 << sz;
44+
mk_tmp(&tmp, size).ok()
45+
})
46+
.collect();
3247
let buf_paths = HashMap::from([
3348
("default".to_string(), None),
34-
("128k".to_string(), Some(1 << 17))
49+
("128k".to_string(), Some(1 << 17)),
3550
]);
36-
51+
3752
let router = build_simple_router(|route| {
3853
for (path, sz) in &buf_paths {
3954
let mut opts = FileOptions::from(tmp.path().to_owned());
4055
if let Some(size) = sz {
4156
opts.with_buffer_size(*size);
4257
}
43-
route.get(format!("/{path}/*").as_str()).to_dir(opts.to_owned())
58+
route
59+
.get(format!("/{path}/*").as_str())
60+
.to_dir(opts.to_owned())
4461
}
4562
});
4663
let runtime = runtime::Builder::new_multi_thread()
@@ -54,11 +71,17 @@ impl BenchServer {
5471
let listener = runtime.block_on(TcpListener::bind(addr)).unwrap();
5572
// use any free port
5673
let addr = listener.local_addr().unwrap();
57-
let _ = runtime.spawn( async move {
74+
let _ = runtime.spawn(async move {
5875
bind_server(listener, router, future::ok).await;
5976
});
6077
std::thread::sleep(Duration::from_millis(100));
61-
Ok(Self { runtime, addr, tmp, sizes, buf_paths })
78+
Ok(Self {
79+
runtime,
80+
addr,
81+
tmp,
82+
sizes,
83+
buf_paths,
84+
})
6285
}
6386
}
6487

@@ -67,7 +90,11 @@ fn mk_tmp(tmp: &TempDir, size: u64) -> anyhow::Result<u64> {
6790
let file = File::create(filename)?;
6891
let mut w = BufWriter::with_capacity(2 << 16, file);
6992
// pseudo random data: time stamp as bytes
70-
let ts_data = SystemTime::now().duration_since(SystemTime::UNIX_EPOCH).unwrap().as_nanos().to_le_bytes();
93+
let ts_data = SystemTime::now()
94+
.duration_since(SystemTime::UNIX_EPOCH)
95+
.unwrap()
96+
.as_nanos()
97+
.to_le_bytes();
7198
for _ in (0..size).step_by(ts_data.len()) {
7299
w.write_all(&ts_data)?;
73100
}
@@ -88,27 +115,35 @@ pub fn filehandler_benchmark(c: &mut Criterion) {
88115
for (path, buf_size) in &server.buf_paths {
89116
let url = format!("http://{}/{path}/{file_size}", server.addr);
90117
let req = client.get(url).build().unwrap();
91-
group.bench_with_input(BenchmarkId::new("test_file_handler",
92-
format!("filesize: {file_size}, bufsize: {buf_size:?}")), &req, |b, req| {
93-
b.to_async(&runtime).iter(|| async {
118+
group.bench_with_input(
119+
BenchmarkId::new(
120+
"test_file_handler",
121+
format!("filesize: {file_size}, bufsize: {buf_size:?}"),
122+
),
123+
&req,
124+
|b, req| {
125+
b.to_async(&runtime).iter(|| async {
94126
let r = client.execute(req.try_clone().unwrap()).await;
95127
counter.fetch_add(1, Relaxed);
96128
match r {
97-
Err(_) => { failed.fetch_add(1, Relaxed); },
129+
Err(_) => {
130+
failed.fetch_add(1, Relaxed);
131+
}
98132
Ok(res) => {
99133
// sanity check: did we get what was expected?
100134
assert_eq!(res.content_length().unwrap(), file_size);
101135
let _ = res.bytes().await.unwrap();
102136
}
103137
}
104-
});
105-
});
138+
});
139+
},
140+
);
106141
}
107142
}
108143
println!("Errors {}/{}", failed.load(Relaxed), counter.load(Relaxed));
109144
}
110145

111-
criterion_group!{
146+
criterion_group! {
112147
name = file_handler;
113148
config = Criterion::default().measurement_time(Duration::from_millis(10_000)).warm_up_time(Duration::from_millis(10));
114149
targets = filehandler_benchmark

gotham/src/handler/assets/mod.rs

+3-1
Original file line numberDiff line numberDiff line change
@@ -224,7 +224,9 @@ fn create_file_response(options: FileOptions, state: State) -> Pin<Box<HandlerFu
224224
.body(Body::empty())
225225
.unwrap());
226226
}
227-
let buf_size = options.buffer_size.unwrap_or_else(|| optimal_buf_size(&meta));
227+
let buf_size = options
228+
.buffer_size
229+
.unwrap_or_else(|| optimal_buf_size(&meta));
228230
let (len, range_start) = match resolve_range(meta.len(), &headers) {
229231
Ok((len, range_start)) => (len, range_start),
230232
Err(e) => {

0 commit comments

Comments
 (0)