import http from 'k6/http'; import { check, sleep } from 'k6'; // k6 Load Test Configuration for NextGen Sync Engine & API // SLA Target: 5,000 events/sec/shard export const options = { stages: [ { duration: '30s', target: 50 }, // Ramp up to 50 VUs { duration: '1m', target: 200 }, // Sustain 200 VUs for high throughput testing { duration: '30s', target: 0 }, // Ramp down ], thresholds: { http_req_duration: ['p(95)<200'], // 95% of requests must complete within 200ms http_req_failed: ['rate<0.01'], // Error rate must be under 1% }, }; const BASE_URL = __ENV.TARGET_URL || 'http://localhost:3001'; export default function () { // Test 1: Health check / SLA probe const healthRes = http.get(`${BASE_URL}/api/health`); check(healthRes, { 'health status is 200': (r) => r.status === 200, }); // Test 2: Sync Engine metrics SLA probe const metricsRes = http.get(`${BASE_URL}/api/metrics`); check(metricsRes, { 'metrics status is 200': (r) => r.status === 200, }); sleep(0.1); }