From af2c79d1963c49402d5b47e916ffb6b0210c79d1 Mon Sep 17 00:00:00 2001 From: Lars Wirzenius Date: Wed, 25 Nov 2020 08:11:57 +0200 Subject: feat: add programs to benchmark server chunk storage --- src/bin/benchmark-indexedstore.rs | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 src/bin/benchmark-indexedstore.rs (limited to 'src/bin/benchmark-indexedstore.rs') diff --git a/src/bin/benchmark-indexedstore.rs b/src/bin/benchmark-indexedstore.rs new file mode 100644 index 0000000..a4191ac --- /dev/null +++ b/src/bin/benchmark-indexedstore.rs @@ -0,0 +1,28 @@ +use obnam::benchmark::ChunkGenerator; +use obnam::indexedstore::IndexedStore; +use std::path::PathBuf; +use structopt::StructOpt; + +#[derive(Debug, StructOpt)] +#[structopt(name = "benchmark-store", about = "Benhcmark the store without HTTP")] +struct Opt { + #[structopt(parse(from_os_str))] + chunks: PathBuf, + + #[structopt()] + num: u32, +} + +fn main() -> anyhow::Result<()> { + pretty_env_logger::init(); + + let opt = Opt::from_args(); + let gen = ChunkGenerator::new(opt.num); + + let mut store = IndexedStore::new(&opt.chunks); + for (_, _, meta, chunk) in gen { + store.save(&meta, &chunk)?; + } + + Ok(()) +} -- cgit v1.2.1