• ์๋ ํ์ธ์~ ์ด์ ์ ์ด์ํ๋ ๋ธ๋ก๊ทธ ๋ฐ GitHub, ๊ณต๋ถ ๋ด์ฉ์ ์ ๋ฆฌํ๋ Study-GitHub ๊ฐ ์์ต๋๋ค!
• ๐
โ CLASS101 ๋ฐฑ์๋ ์์คํ ์ค๋ฌด - Chapter3 CPU Bound ์ ํ๋ฆฌ์ผ์ด์ ๋ฌด์ค๋จ ๋ฐฐํฌ
์๋ ํ์ธ์, ํด๋์ค101 ๋ฐฑ์๋ ์์คํ ์ค๋ฌด ๊ฐ์๋ฅผ ๋ฃ๊ณ , ๋ณต์ต ์ฐจ์์ผ๋ก ์ ๋ฆฌํ์ฌ ๋จ๊ธฐ๋ ค๊ณ ํฉ๋๋ค! ํน์ ๋ฌธ์ ๊ฐ ๋๋ค๋ฉด ๊ธ์ ์ญ์ ํ๊ฒ ์ต๋๋ค !! |
class101.net/products/5fc4a3b4fc231b000d85661b
โ ์๋ฒ๋ฅผ ๋๋ ค์ ์ฑ๋ฅ ์ธก์ ํ๊ธฐ(Artillery)
GCP ์ธ์คํด์ค์์ Nginx์ ์ธ๋ถ IP๋ฅผ cpu-test.yaml ํ์ผ์ IP๋ก ๋ถ์ฌ๋ฃ๊ธฐ ํฉ๋๋ค.
๊ทธ ํ ์ ํ์ผ์ artillery๋ฅผ ํตํด ์คํํฉ๋๋ค.
• artillery.cmd run --output report.json cpu-test.yaml
๊ทธ ํ html ํ์ผ๋ก ์์ฑํฉ๋๋ค.
• artillery.cmd report .\report.json
์ ๊ทธ๋ํ๋ arrivalRate๊ฐ 1 ์ผ๋์ ๊ฒฐ๊ณผ์ธ๋ฐ์, ์ด์ 8๋ก ๋ณ๊ฒฝํ๊ณ ํ ์คํธ๋ฅผ ์งํํด๋ณด๊ฒ ์ต๋๋ค.
์ ๊ทธ๋ํ๋ arrivalRate๊ฐ 8 ์ผ๋์ ๊ฒฐ๊ณผ์ธ๋ฐ์, ์ด์ 16์ผ๋ก ๋ณ๊ฒฝํ๊ณ ํ ์คํธ๋ฅผ ์งํํด๋ณด๊ฒ ์ต๋๋ค.
์ ๊ทธ๋ํ๋ 16์ผ๋ก ๋ณ๊ฒฝํ ๋ค ํ ์คํธ ๊ฒฐ๊ณผ์ ๋๋ค.
์๋ฌ Codes์๋ 500๊ณผ 502๊ฐ ์๋๋ฐ์, ๋ ์๋ต์ ์ฐจ์ด์ ์ ๋ฌด์์ผ๊น์?
500 ์๋ฌ๋ Cpu Bound ์ ํ๋ฆฌ์ผ์ด์ ์์ ์๊ธฐ ์์ ์ ์ฑ๋ฅ์ด, ์์ฒญ์ ๋ํ ์๋ต์ ํ ์ ์๋ ์ํ๊ฐ ๋์ด์
์์ฒด์์ ๋ฐ์ํ๋ ์ค๋ฅ์ ๋๋ค.
502 ์๋ฌ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ด 500 ์๋ฌ๋ฅผ ๊ณ์ ๋์ง๋ค๊ฐ, ์ด๋ ์๊ฐ์๋ ์ด ์๋ฌ ์กฐ์ฐจ ๋์ง ์ ์์๋, 502๋ก ๋จ์ด์ง๊ฒ ๋ฉ๋๋ค. ์ฆ, ์ ํ๋ฆฌ์ผ์ด์ ์์ฒด๊ฐ ์ข ๋ฃ๊ฐ ๋๋ ์ํ์ ๋๋ค.
์ด๋๋ถํฐ๋ Nginx๊ฐ ํด๋น ์ธ์คํด์ค๊ฐ ๋์ด์ ์์ฒญ์ ๋ฐ์ ์ ์๋ค๊ณ ํ๋จํ๊ณ ๋์ด๋ฒ๋ฆฝ๋๋ค.
๐ GCP ์ธ์คํด์ค 1๊ฐ๋ก ํ ์คํธํ๊ธฐ(์ธ์คํด์ค-2,3 ์ docker ์ ์ง)
GCP ์ธ์คํด์ค๋ฅผ 1๊ฐ๋ก๋ง ํ ์คํธํ๊ธฐ ์ํด์ ์ธ์คํด์ค-2,3 ์์ ์คํ์ค์ธ ์ ํ๋ฆฌ์ผ์ด์ (๋์ปค์ด๋ฏธ์ง)์ ์ ์งํด์ผํฉ๋๋ค.
docker ps
docker container kill -s 15 CONTAINER ID
์ธ์คํด์ค-2,3 ์ docker ์ฌ๊ธฐ๋
• Jenkins์์ ๋น๋
๐ ๋ฌด์ค๋จ ๋ฐฐํฌ ํ์ธ
Artillery๋ก ์คํธ๋ ์ค ํ ์คํธ ๋์ค, ๋ก๋๋ฐธ๋ฐ์ฑ ๋๋ ์๋ฒ๊ฐ ์ฃฝ์ด๋ ํด๋น ์์ฒญ์ ๋ค๋ฅธ ์๋ฒ์ ์์ฒญํ์ฌ ์๋ต์ ๋ฐ์์ค๊ธฐ ๋๋ฌธ์ ์์ฒญ์ด ์คํจํ์ง ์์ต๋๋ค.
์ด์ฒ๋ผ, ์คํจํ ์์ฒญ์ ๋ํด ์ ์์ ์ผ๋ก ์ฒ๋ฆฌ๋ ์ ์๋๋ก ์๋์ผ๋ก ์๋ต์๋ ์๋ฒ๋ก ์์ฒญ์ ํฌ์๋ฉํด์ฃผ๋ ๊ฒ์
failover ๋ผ๊ณ ํฉ๋๋ค.
๋๊ธ