Skip to content

Commit 7ff611b

Browse files
committed
add docker-compose
1 parent 5ce6d1c commit 7ff611b

File tree

1 file changed

+47
-0
lines changed

1 file changed

+47
-0
lines changed

load_test/docker-compose.yml

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
---
2+
services:
3+
neurow-load-test:
4+
image: neurow-load-test:latest
5+
container_name: neurow-load-test
6+
ports:
7+
- "2999:2999"
8+
environment:
9+
# Logging
10+
- LOG_LEVEL=debug # Log level: debug, info, warning, error (default: info)
11+
12+
# Server
13+
- PORT=2999 # HTTP server port for metrics endpoint (default: 2999)
14+
- NB_USER=1 # Number of concurrent users/connections to simulate (default: 1)
15+
16+
# SSE Connection Configuration
17+
#- SSE_URL=http://sse-gateway:4000/v1/subscribe # SSE endpoint URL (default: http://localhost:4000/v1/subscribe)
18+
#- SSE_URL=http://neurow:5000/v1/subscribe # To test Neurow instead
19+
- SSE_URL= # staging
20+
- SSE_TIMEOUT=900000 # SSE connection timeout in milliseconds (default: 900000 = 15 minutes)
21+
- SSE_AUTO_RECONNECT=false # Auto-reconnect on SSE disconnection (default: false)
22+
# - SSE_USER_AGENT=neurow_load_test/1.0 # User-Agent header for SSE requests (default: neurow_load_test/1.0)
23+
24+
# SSE JWT Authentication
25+
- SSE_JWT_EXPIRATION=86400 # JWT token expiration in seconds (default: 86400 = 24 hours)
26+
- SSE_JWT_ISSUER=test_issuer1 # JWT issuer claim (default: test_issuer1)
27+
- SSE_JWT_SECRET=966KljJz--KyzyBnMOrFXfAkq9XMqWwPgdBV3cKTxsc # JWT signing secret (must match neurow)
28+
- SSE_JWT_AUDIENCE=neurow # JWT audience claim (must match neurow service_name)
29+
30+
# Publish Configuration
31+
#- PUBLISH_URL=http://sse-gateway:3000/v1/publish # Publish endpoint URL (default: http://localhost:3000/v1/publish)
32+
#- PUBLISH_URL=http://neurow:6000/v1/publish # To test Neurow instea
33+
- PUBLISH_URL= #staging
34+
- PUBLISH_TIMEOUT=5000 # Publish HTTP request timeout in milliseconds (default: 5000)
35+
- PUBLISH_HTTP_POOL_SIZE=10000 # HTTP connection pool size for publishing (must be >= NB_USER)
36+
- PUBLISH_JWT_ISSUER=test_issuer1 # JWT issuer for publish requests (default: test_issuer1)
37+
- PUBLISH_JWT_SECRET=966KljJz--KyzyBnMOrFXfAkq9XMqWwPgdBV3cKTxsc # JWT signing secret (must match neurow)
38+
- PUBLISH_JWT_AUDIENCE=neurow # JWT audience for publish requests (must match neurow service_name)
39+
40+
# Load Test Behavior
41+
- DELAY_BETWEEN_MESSAGES_MIN=500 # Minimum delay between published messages in milliseconds (default: 500)
42+
- DELAY_BETWEEN_MESSAGES_MAX=5000 # Maximum delay between published messages in milliseconds (default: 5000)
43+
- NUMBER_OF_MESSAGES_MIN=10 # Minimum number of messages to publish per user (default: 10)
44+
- NUMBER_OF_MESSAGES_MAX=50 # Maximum number of messages to publish per user (default: 50)
45+
- INITIAL_DELAY_MAX=15000 # Maximum initial delay before starting to publish in milliseconds (default: 5000)
46+
restart: unless-stopped
47+

0 commit comments

Comments
 (0)