New Plugin Proposal: SSE Sampler

15 views
Skip to first unread message

Cüneyt Çakır

unread,
Apr 1, 2026, 10:21:40 AM (yesterday) Apr 1
to jmeter-plugins
## New Plugin Proposal: SSE Sampler

Hello JMeter Plugins community,

I'd like to propose adding a new plugin to the catalog: **SSE Sampler** — a Server-Sent Events sampler for load testing real-time HTTP streaming endpoints.

### Plugin Details

- **Name:** SSE Sampler
- **ID:** `sse-sampler`
- **GitHub:** https://github.com/cuneytcakir/jmeter-sse-sampler
- **License:** Apache License 2.0
- **JMeter Version:** 5.6+

### Why This Plugin?

Apache JMeter has excellent support for HTTP, WebSocket, and JDBC protocols, but there is no native sampler for Server-Sent Events (SSE) — an increasingly common protocol used in:
- Real-time dashboards and monitoring systems
- Live sports and financial data feeds
- Chat and notification systems

### Technical Implementation

- Uses **OkHttp 5.x** with `okhttp-sse` for SSE protocol handling
- **Shared `OkHttpClient`** connection pool (no resource leaks under high concurrency)
- Supports **custom HTTP headers** (Authorization, X-Tenant-Id, etc.)
- Properly reports **Connect Time, Bytes, Response Code** to JMeter
- All result writes on the JMeter thread (no race conditions)
- JAR is self-contained (OkHttp bundled via maven-shade-plugin with package relocation)

### Catalog JSON Entry

```json
[
{
"id": "sse-sampler",
"name": "SSE Sampler",
"description": "High-performance Server-Sent Events (SSE) sampler for load testing real-time streaming HTTP endpoints. Supports custom authentication headers, configurable listen duration, HTTP error detection, and accurate JMeter metrics (bytes, connect time, throughput).",
"helpUrl": "https://github.com/cuneytcakir/jmeter-sse-sampler#readme",
"markerFile": "lib/ext/jmeter-sse-sampler-1.0.0.jar",
"iconUrl": "https://github.com/cuneytcakir/jmeter-sse-sampler/blob/main/docs/icon.png",
"vendor": "Cüneyt Çakır",
"versions": {
"1.0.0": {
"downloadUrl": "https://github.com/cuneytcakir/jmeter-sse-sampler/releases/download/v1.0.0/jmeter-sse-sampler-1.0.0.jar",
"changes": "Initial release. Shared OkHttpClient pool, custom headers, HTTP status detection, accurate bytes/connect-time reporting.",
"libs": {}
}
}
}
]

```

### Download

The release JAR is available at:
https://github.com/cuneytcakir/jmeter-sse-sampler/releases/tag/v1.0.0

Thank you for considering this addition!
Reply all
Reply to author
Forward
0 new messages