Skip to content

slimctl bench

Benchmark SLIM messaging performance against a running SLIM node. Inspired by the design of nats bench.

Start subscribers before publishers — subscribers must be ready and waiting before the publisher begins sending.

Usage

slimctl bench [OPTIONS] <COMMAND>

Subcommands

Command Description
sub Run subscriber workers for a point-to-point benchmark
pub Run publisher workers for a point-to-point benchmark
channel Run a group session (channel) benchmark

Options

Flag Default Description
--log-level info Log level for SLIM internals (error, warn, info, debug, trace)

Inherited Options

Options inherited from slimctl:

Flag Short Default Description
--config ~/.slimctl/config.yaml Path to slimctl configuration file
--server 127.0.0.1:46358 gRPC API endpoint
--timeout 15s gRPC request timeout
--basic-auth-creds -b Basic auth credentials (username:password)
--tls.ca_file Path to TLS CA certificate
--tls.cert_file Path to client TLS certificate
--tls.key_file Path to client TLS private key
--tls.insecure_skip_verify false Skip TLS certificate verification

Naming Convention

Benchmark workers register under names derived from --prefix:

Worker type Name pattern
Subscriber i <prefix>/sub-<i>
Publisher i <prefix>/pub-<i>

For example, with --prefix bench/test --count 2, the two subscribers register as bench/test/sub-0 and bench/test/sub-1.