Database Load Simulation
This distributed use case simulates sustained write and read pressure on a local data stack so developers can observe behavior under load before integration testing.
The objective is development feedback, not production benchmarking.
Server config for DB load simulation
{
"session": {
"bind": "127.0.0.1:6999",
"token": "dev-token-db-load"
},
"services": {
"postgres": {
"cmd": ["postgres", "-D", "./var/postgres"],
"port": 5432,
"ready": {
"type": "tcp"
}
},
"redis": {
"cmd": ["redis-server", "./infra/redis.conf"],
"port": 6379,
"ready": {
"type": "tcp"
}
},
"api": {
"cmd": ["pnpm", "--dir", "services/api", "dev"],
"dependsOn": ["postgres", "redis"],
"port": 3000,
"ready": {
"type": "http",
"url": "http://127.0.0.1:3000/health"
}
},
"worker": {
"cmd": ["pnpm", "--dir", "services/worker", "dev"],
"dependsOn": ["api", "postgres", "redis"]
},
"load-generator": {
"kind": "oneshot",
"cmd": [
"sh",
"-c",
"for i in $(seq 1 400); do curl -sS -X POST http://127.0.0.1:3000/orders -H 'content-type: application/json' -d '{\"customerId\":\"dev\",\"amount\":42}'; done"
],
"dependsOn": ["api"]
}
}
}
Run and inspect
flowlayer-server -c ./flowlayer.jsonc
flowlayer-client-tui -addr 127.0.0.1:6999 -token dev-token-db-load
What to watch:
- API logs for request bursts and failures
- worker logs for queue or retry behavior
- service status transitions when dependencies restart
Remote execution variant
For heavier runs, execute the server on a VM or shared machine and connect from your laptop:
flowlayer-client-tui -addr 10.42.0.50:6999 -token dev-token-db-load
If possible, prefer VPN or SSH tunnel access over direct exposure.
Safety precautions
- Use dedicated development data stores and credentials.
- Never point this pattern at production databases.
- Limit test volume to what your dev environment can handle.
- Rotate tokens when running on shared hosts.
Boundaries
- This pattern simulates runtime behavior for development.
- FlowLayer is not a load-testing platform and not a production orchestrator.
- It does not replace Kubernetes, Docker Compose, PM2, or systemd.