-
Notifications
You must be signed in to change notification settings - Fork 5
Artillery: Performance testing tool
Artillery๋ ๊ฐ๋ณ๊ณ ํธํ๊ฒ ์ธ ์ ์๋ ์คํธ๋ ์ค ํ ์คํธ ํด์ด๋ค. Node.js๋ก ์์ฑ๋์๋ค๊ณ ํ๋ค.
๋ ํ์ํํ๊ณ ์ ๊ตํ ํ ์คํธ๋ฅผ ์ํํ ์ ์๋ ๋๊ตฌ๋ค๋ ์๊ฒ ์ง๋ง, ๊ฐ๋จํ ํ ์คํธ ์ ๋๋ Artillery๋ก ์ถฉ๋ถํ ์ปค๋ฒํ ์ ์๋ ๊ฒ ๊ฐ๋ค. (์ ์ผ๋ฉฐ ์๊ฐํด๋ณด๋ ์ค๋ฌด์์๋ ์ด๋ค ํ ์คํ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ๋์ง๋ ๊ถ๊ธํด์ง๋ค.) ์ฌ์๊ฐ์ด ํ๋ก์ ํธ์ ๋ชฉํ ์ค ํ๋๊ฐ ์๋ฒ์ ์ฑ๋ฅ๊ณผ ์์ ์ฑ์ธ๋งํผ, ์คํธ๋ ์ค ํ ์คํธ ๋๊ตฌ์ธ Artillery๊ฐ ์๋ฒ์ ์ฑ๋ฅ ๊ฐ์ ์์ ์ ๋์์ ์ค ์ ์์ ๊ฒ์ผ๋ก ๋ณด์ธ๋ค.
ํ๋ก์ ํธ์์ devDependency๋ก ์ค์นํ๊ฑฐ๋ ์ปดํจํฐ์ ์ ์ญ ์ค์นํ์ฌ ์คํํ ์ ์๋ค. ํ์ฌ๋ ์ ์ญ ์ค์น๋ฅผ ๊ธฐ์ค์ผ๋ก ํ๋ค.
npm install -g [email protected]
2.x์ ์ต์ ๋ฒ์ ๋์ ์ 1.7.9 ๋ฒ์ ์ ์ค์นํ์๋ค. 2.x ๋ฒ์ ์ ์ฌ์ฉํด๋ณด๋ ํ ์คํธ Report์์ ์ฐจํธ๋ฅผ ์ถ๋ ฅํ์ง ๋ชปํ๋ ๋ฒ๊ทธ๊ฐ ์์๋ค. ์ฐธ๊ณ
ํ
์คํธ์ ๋ํ ์ ๋ณด๋ฅผ json์ด๋ yml ํ์์ผ๋ก ์์ฑํ ์ ์๋ค. ์๋ ๋ด์ฉ์ test.json
ํ์ผ๋ก ์ ์ฅํ๋ค.
{
"config": {
"target": "https://sajagachi.ga",
"phases": [{ "duration": 10, "arrivalRate": 10, "name": "Warm up" }],
"defaults": {
"headers": {
"User-Agent": "Artillery"
}
}
},
"scenarios": [
{
"name": "Search API",
"flow": [
{
"get": {
"url": "/?offset=0&limit=15&category=1&lat=37.5642135&long=127.0016985"
}
}
]
}
]
}
sajagachi.ga
์ 10์ด๋์ ์ด๋น ์ด ๋ฒ์ ์์ฒญ์ ๋ณด๋ด๋ ํ
์คํธ์ด๋ค. (๋ฐฐํฌ ์๋ฒ ํฐ์ง๊น๋ด ๋งค์ฐ ์์ฌํ๊ฒ ์์ฑํ ํ
์คํธ...) ์ฌ์ฉํ ์ฃผ์ ์ต์
๋ค์ ์๋์ ๊ฐ๊ณ , ์์ธํ ๊ฒ์ ๋์ค์ ๊ณต์ ๋ฌธ์๋ฅผ ํตํด ๋ ์กฐ์ฌํด๋ด์ผํ ๊ฒ ๊ฐ๋ค. ๊ณต์ ๋ฌธ์: Test Script Reference
- config
- target: ํ ์คํธ๋ฅผ ์ํํ ํ๊น์ ํธ์คํธ
- phases
- duration: ๋ช ์ด ๋์ ํ ์คํธ๋ฅผ ์ํํ ๊ฒ์ธ์ง
- arrivalRate: 1์ด์ ๋ช ๋ฒ ์์ฒญํ ๊ฒ์ธ์ง
- scenarios
- name: ํ ์คํธ ์๋๋ฆฌ์ค์ ์ด๋ฆ
- flow: ์ํํ ์์ฒญ์ ๊ธฐ์
๋ค์ ๋ช
๋ น์ด๋ test.json
ํ์ผ์ ์์ฑ๋ ํ
์คํธ๋ฅผ ์คํํ๊ณ , ๊ทธ ๊ฒฐ๊ณผ๋ฅผ report.json
ํ์ผ๋ก ๋ด๋ณด๋ธ๋ค.
artillery run -o report.json test.json
report.json
์ผ๋ก ์์ฑ๋ ํ
์คํธ ๊ฒฐ๊ณผ๋ฅผ ๋ณด๊ธฐ ์ข๊ฒ report.html
ํ์ผ๋ก ๋ณํํ๋ ๋ช
๋ น์ด์ด๋ค.
artillery report -o report.html report.json
์์ฑ๋ report.html
ํ์ผ์ ๋ธ๋ผ์ฐ์ ๋ก ์ด์ด ์๋์ ๊ฐ์ ๋ณด๊ณ ์๋ฅผ ํ์ธํ ์ ์๋ค. ์ฑ๋ฅ ์ธก์ ์ ๊ฒฐ๊ณผ๊ฐ ๋ค์ํ ์งํ์ ํจ๊ป ์ฐจํธ๋ก ํํ๋์ด ์๋ ๊ฒ์ ๋ณผ ์ ์๋๋ฐ, ์ด ๊ฒฐ๊ณผ๋ฅผ ์ด๋ป๊ฒ ๋ถ์ํ ์ ์์์ง๋ ์กฐ๊ธ ๋ ์กฐ์ฌํด๋ด์ผํ ๊ฒ ๊ฐ๋ค.
- IntersectionObserver
- B-Tree
- Web Server & Web Application Server
- Query Optimization (1)
- Query Optimization (2)
- M1 Mac์์ link preview generator ์ค์น ์ค ๋ฐ์ํ๋ ์ค๋ฅ
- CORS
- react-router-dom
- Artillery: Performance testing tool
- JWT
- LinkPreview
- SWR
- ์ฟผ๋ฆฌ์ฑ๋ฅํฅ์&๋ฌดํ์คํฌ๋กค
- 10์ 26์ผ ํ์์ผ
- 10์ 27์ผ ์์์ผ
- 10์ 28์ผ ๋ชฉ์์ผ
- 11์ 1์ผ ์์์ผ
- 11์ 2์ผ ํ์์ผ
- 11์ 3์ผ ์์์ผ
- 11์ 4์ผ ๋ชฉ์์ผ
- 11์ 9์ผ ํ์์ผ
- 11์ 10์ผ ์์์ผ
- 11์ 11์ผ ๋ชฉ์์ผ
- 11์ 16์ผ ํ์์ผ
- 11์ 17์ผ ์์์ผ
- 11์ 18์ผ ๋ชฉ์์ผ
- 11์ 23์ผ ํ์์ผ
- 11์ 24์ผ ์์์ผ
- 11์ 25์ผ ๋ชฉ์์ผ
- 11์ 30์ผ ํ์์ผ
- 12์ 1์ผ ์์์ผ
- 12์ 2์ผ ๋ชฉ์์ผ