Submitter¶
Overview¶
The Submitter component is written in C++ and submits multiple requests with a very high speed to stress test a system. The source is in tests/perf-system/submitter. In order to build the submitter, the required libraries should be installed following the CCF Development Setup.
Run submitter¶
The submitter must be built before use. If the CCF project is already built in your directory, compile and run it as follows (see Build CCF from Source for a first-time build):
$ ninja submit
For a full description of all options, run:
$ ./submit --help
The submitter requires TLS credentials, addresses, and paths to parquet files produced by the Generator. Some example invocations:
# Basic submission against a local node, no pipelining
$ ./submit \
--cert member0_cert.pem \
--key member0_privk.pem \
--cacert service_cert.pem \
--server-address 127.0.0.1:8000 \
--generator-filepath requests.parquet \
--send-filepath send.parquet \
--response-filepath responses.parquet
# Pipelined submission (up to 100 outstanding requests)
$ ./submit \
--cert member0_cert.pem \
--key member0_privk.pem \
--cacert service_cert.pem \
--server-address 127.0.0.1:8000 \
--generator-filepath requests.parquet \
--send-filepath send.parquet \
--response-filepath responses.parquet \
--max-writes-ahead 100
Once the component finishes, the submitted requests and responses are stored in two
.parquet files for subsequent analysis by the Analyzer component.