Skip to content

perf: add reproducible private and group messaging benchmarks#48

Merged
yuwnloyblog merged 1 commit into
masterfrom
feat/reproducible-benchmarks
Jul 20, 2026
Merged

perf: add reproducible private and group messaging benchmarks#48
yuwnloyblog merged 1 commit into
masterfrom
feat/reproducible-benchmarks

Conversation

@yuwnloyblog

Copy link
Copy Markdown
Contributor

Summary

  • add a configurable jimbench CLI using the production WebSocket protocol
  • cover private-ring and group fan-out workloads with separate connection, ACK, and delivery metrics
  • report throughput plus P50/P95/P99 latency, errors, workload settings, commit, OS, CPU, memory, database, and deployment labels
  • add a guarded one-command Docker Compose runner and machine-readable JSON results
  • document methodology, limitations, reproduction, and publication requirements
  • add benchmark tests to CI

Verification

  • go test ./simulator/benchmark ./cmd/jimbench
  • go test -race ./simulator/benchmark
  • go vet -composites=false ./simulator/benchmark ./cmd/jimbench ./simulator/wsclients
  • CGO_ENABLED=0 go build ./cmd/jimbench
  • bash -n scripts/run-benchmark.sh
  • docker compose config --quiet
  • real local private and group smoke runs: 20/20 connections, 499/499 ACKs, zero send failures

The checked-in smoke reports validate the harness and are explicitly labeled as local development results, not production capacity claims.

Closes #37

@yuwnloyblog
yuwnloyblog merged commit 3710ed0 into master Jul 20, 2026
3 checks passed
@yuwnloyblog
yuwnloyblog deleted the feat/reproducible-benchmarks branch July 20, 2026 09:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

perf: add a reproducible baseline benchmark harness

1 participant