#performance #rpc #interop #specification #service #structure #rpc-perf


Data structure specifications for interoperability with rpc-perf

2 unstable releases

0.2.0 Dec 12, 2023
0.1.1 Nov 7, 2023

#36 in #services

Download history 4/week @ 2024-02-15 41/week @ 2024-02-22 18/week @ 2024-02-29 10/week @ 2024-03-07 16/week @ 2024-03-14 23/week @ 2024-03-28

52 downloads per month


72 lines


rpc-perf is a tool for measuring the performance of network services. While it has historically focused on caching services, the support is expanding to cover HTTP and PubSub.

License: Apache-2.0 License: MIT Build Status: CI


Getting started

Follow the build instructions to build rpc-perf from this repository and take a look at the example configurations in the configs folder. There you will find some examples for each of the supported protocols. The examples provide a starting point and may need some changes to produce a representative workload for your testing.

Building from source

To build rpc-perf from source, you will need a current Rust toolchain. If you don't have one, you can use rustup or follow the instructions on rust-lang.org.

Now that you have a Rust toolchain installed, you can clone and build the project using the cargo command.

git clone https://github.com/iopsystems/rpc-perf
cd rpc-perf
cargo build --release

This will produce a binary at target/release/rpc-perf which you may copy to a more convenient location. Check out the getting started for more information on how to use rpc-perf


If you want to submit a patch, please follow these steps:

  1. create a new issue
  2. fork on github & clone your fork
  3. create a feature branch on your fork
  4. push your feature branch
  5. create a pull request linked to the issue


~31K SLoC