Hi,
In attempt to test streams, I've forked repository
here where I've updated original repo to use go modules and implemented RabbitMQ streams (
this file) to test. Upon running benchmark, I got a latency of 200 milliseconds, which is too high. And in management UI of RabbitMQ, stream producer and consumer network usages were topping at 5KB/s.
I'm not sure if it's an issue with latency of go client or my implementation specifically.
Instructions to reproduce:
- Ensure rabbitmq streams is running on 5552 localhost
- Clone fork and download all deps by running go mod tidy
- cd into examples directory and `go run rmqstream.go`
Following is output of a run with each msg of size 1KB
```
~/repos/bench/examples$ go run rmqstream.go
{Connections: 1, RequestRate: 1000, RequestTotal: 200, SuccessTotal: 200, ErrorTotal: 0, TimeElapsed: 39.999561743s, Throughput: 5.00/s}
```
Below is the graph obtained. Context on how benchmark operates with stream -> it sends a message to stream and receives it immediately (on same thread) and observes time difference.