Files
edu/bbs/traffic_test.php

26 lines
1.1 KiB
PHP

import http from 'k6/http';
import { check, sleep } from 'k6';
// 트래픽 낭비를 막기 위해 단 1분 30초만 짧게 테스트합니다.
export const options = {
stages: [
{ duration: '30s', target: 30 }, // 30초 동안 동시 접속자를 30명까지 올림
{ duration: '30s', target: 30 }, // 30명 동시 접속 상태를 30초 유지 (이때 에러가 나는지 집중 확인!)
{ duration: '30s', target: 0 }, // 30초 동안 접속 서서히 종료
],
};
export default function () {
const baseUrl = 'https://domain.cafe24.com'; // 실제 서비스 도메인으로 변경
// [Point] 불필요한 하위 페이지는 빼고, 쿼리가 가장 많이 도는 메인 페이지만 타격합니다.
let res = http.get(`${baseUrl}/`);
check(res, {
'정상 접속(200)': (r) => r.status === 200,
'빠른 응답(<1초)': (r) => r.timings.duration < 1000,
});
// [Point] 방화벽 디도스(DDoS) 영구 차단을 피하기 위해 요청 간격을 여유 있게 줍니다.
sleep(Math.random() * 4 + 2); // 2~6초 사이 랜덤 대기
}