Phase 3: Load testing (10 → 100 → 1000 concurrent users) #36
Labels
No labels
meeting-notes
meeting-sensitive
meeting-transcript
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
coopcloud_code/home#36
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Goal
Verify the marketplace handles concurrent users without degradation. Now meaningful because we're testing embedded OSIS with real persistence (not fixture JSON files).
Depends on
Supersedes
Why embedded OSIS changes what we test
DBTyped<T>with file-per-object storage, flock on counter files, atomic writes. This is the real production path.Phases
Phase 1: 10 concurrent users (baseline)
tests/load_test.shor k6)Phase 2: 100 concurrent users
Phase 3: 1000 concurrent users (stress)
Key endpoints to test
POST /api/auth/register— keypair registration (OSIS write)GET /api/auth/challenge— HMAC computation (CPU)POST /api/auth/verify— ed25519 verification (CPU + OSIS read)POST /api/wallet/transact— signature verify + balance check + debit (concurrency-critical)GET /api/products/featured— catalog query (OSIS read)Acceptance criteria
tests/Signed-off-by: mik-tf
Phase 3: Load Test Results
10 concurrent users — ALL PASS
100 concurrent users — PASS (0.7% error rate, target <1%)
Key findings
/api/wallet/transact) requires ed25519 sig — can only load-test with real keys (Playwright covers this)Test script:
tests/load_test.sh— mik-tf
Completed. 10 concurrent: 0% errors. 100 concurrent: 0.7% errors. Load test script in tests/load_test.sh (7 tests). Part of v2.0.0 release.
— mik-tf