slimctl bench pub
Run publisher workers for a point-to-point benchmark. Start subscribers first with bench sub.
Usage
slimctl bench pub [OPTIONS]
Examples
Run 4 concurrent publishers sending 1 000 000 messages of 512 bytes:
slimctl bench pub --count 4 --msgs 1000000 --size 512
Measure request-reply latency (requires bench sub --reply running):
slimctl bench pub --request --msgs 10000
Run in reliable mode with acknowledgements:
slimctl bench pub --reliable --msgs 100000
Options
| Flag | Default | Description |
|---|---|---|
--count |
1 |
Number of concurrent publisher apps |
--msgs / -n |
100000 |
Total messages to publish across all publishers |
--size |
128 |
Payload size in bytes. Accepts unit suffixes: kb/mb/gb (SI ×1000) or kib/mib/gib (IEC ×1024). |
--server |
http://localhost:46357 |
SLIM server URL |
--secret |
(test default) | Shared secret for authentication (minimum 32 characters) |
--prefix |
bench/test |
Name prefix in org/namespace format. Must match the subscriber's --prefix. |
--request |
false |
Request-reply mode: wait for an echo reply after each publish. Requires bench sub --reply. |
--reliable |
false |
Reliable mode: retransmit unacknowledged messages and wait for ACK before sending the next. Default is fire-and-forget. |
--start-index |
0 |
Index of the first publisher in this process. Use with --count to distribute publishers across multiple processes. |
--csv |
— | Append results to a CSV file at the given path |
Inherited Options
Options inherited from slimctl bench:
| Flag | Default | Description |
|---|---|---|
--log-level |
info |
Log level for SLIM internals |
Options inherited from slimctl:
| Flag | Short | Default | Description |
|---|---|---|---|
--config |
— | ~/.slimctl/config.yaml |
Path to slimctl configuration file |
--timeout |
— | 15s |
gRPC request timeout |
--basic-auth-creds |
-b |
— | Basic auth credentials |
--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 |