๋„คํŠธ์›Œํฌ ๋ฌธ์ œ์— ๋Œ€ํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ณต์›๋ ฅ์„ ํ…Œ์ŠคํŠธํ•˜๊ธฐ ์œ„ํ•œ ํ”„๋ก์‹œ์ธ Toxiproxy 2.3 ์ถœ์‹œ

๊ฐ€์žฅ ํฐ ์ „์ž ์ƒ๊ฑฐ๋ž˜ ํ”Œ๋žซํผ ์ค‘ ํ•˜๋‚˜์ธ Shopify๋Š” ๋„คํŠธ์›Œํฌ ๋ฐ ์‹œ์Šคํ…œ ์˜ค๋ฅ˜์™€ ์ด์ƒ ํ˜„์ƒ์„ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ํ•˜์—ฌ ์ด๋Ÿฌํ•œ ์ƒํ™ฉ์ด ๋ฐœ์ƒํ•  ๋•Œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„ฑ๋Šฅ์„ ํ…Œ์ŠคํŠธํ•˜๋„๋ก ์„ค๊ณ„๋œ ํ”„๋ก์‹œ ์„œ๋ฒ„์ธ Toxiproxy 2.3์„ ์ถœ์‹œํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ํ”„๋กœ๊ทธ๋žจ์€ Toxiproxy๋ฅผ ๋‹จ์œ„ ํ…Œ์ŠคํŠธ ์‹œ์Šคํ…œ, ์ง€์†์ ์ธ ํ†ตํ•ฉ ํ”Œ๋žซํผ ๋ฐ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ๊ณผ ํ†ตํ•ฉํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋™์ ์œผ๋กœ ๋ณ€ํ™”ํ•˜๋Š” ํ†ต์‹  ์ฑ„๋„ ํŠน์„ฑ์„ ์œ„ํ•œ API๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์œผ๋กœ ์œ ๋ช…ํ•ฉ๋‹ˆ๋‹ค. Toxiproxy ์ฝ”๋“œ๋Š” Go๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ MIT ๋ผ์ด์„ ์Šค์— ๋”ฐ๋ผ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค.

ํ”„๋ก์‹œ๋Š” ํ…Œ์ŠคํŠธ ์ค‘์ธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ์ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์ƒํ˜ธ ์ž‘์šฉํ•˜๋Š” ๋„คํŠธ์›Œํฌ ์„œ๋น„์Šค ์‚ฌ์ด์—์„œ ์‹คํ–‰๋˜๋ฉฐ, ๊ทธ ํ›„ ์„œ๋ฒ„์—์„œ ์‘๋‹ต์„ ๋ฐ›๊ฑฐ๋‚˜ ์š”์ฒญ์„ ๋ณด๋‚ผ ๋•Œ ํŠน์ • ์ง€์—ฐ ๋ฐœ์ƒ์„ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ํ•˜๊ณ , ๋Œ€์—ญํญ์„ ๋ณ€๊ฒฝํ•˜๊ณ , ์—ฐ๊ฒฐ ์ˆ˜๋ฝ ๊ฑฐ๋ถ€๋ฅผ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. , ์—ฐ๊ฒฐ ์„ค์ • ๋˜๋Š” ์ข…๋ฃŒ์˜ ์ •์ƒ์ ์ธ ์ง„ํ–‰์„ ๋ฐฉํ•ดํ•˜๊ณ , ์„ค์ •๋œ ์—ฐ๊ฒฐ์„ ์žฌ์„ค์ •ํ•˜๊ณ , ํŒจํ‚ท ๋‚ด์šฉ์„ ์™œ๊ณกํ•ฉ๋‹ˆ๋‹ค.

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ํ”„๋ก์‹œ ์„œ๋ฒ„์˜ ์ž‘๋™์„ ์ œ์–ดํ•˜๊ธฐ ์œ„ํ•ด Ruby, Go, Python, C#/.NET, PHP, JavaScript/Node.js, Java, Haskell, Rust ๋ฐ Elixir์šฉ ํด๋ผ์ด์–ธํŠธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์ œ๊ณต๋˜์–ด ๋„คํŠธ์›Œํฌ ์ƒํ˜ธ ์ž‘์šฉ์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฆ‰์„์—์„œ ์กฐ๊ฑด์„ ์„ค์ •ํ•˜๊ณ  ์ฆ‰์‹œ ๊ฒฐ๊ณผ๋ฅผ ํ‰๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ์ฝ”๋“œ๋ฅผ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š๊ณ  ํ†ต์‹  ์ฑ„๋„์˜ ํŠน์„ฑ์„ ๋ณ€๊ฒฝํ•˜๋ ค๋ฉด ํŠน์ˆ˜ ์œ ํ‹ธ๋ฆฌํ‹ฐ toxiproxy-cli๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(Toxiproxy API๊ฐ€ ๋‹จ์œ„ ํ…Œ์ŠคํŠธ์— ์‚ฌ์šฉ๋˜๋ฉฐ ์ด ์œ ํ‹ธ๋ฆฌํ‹ฐ๋Š” ๋Œ€ํ™”ํ˜• ์‹คํ—˜์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐ ์œ ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค).

์ƒˆ ๋ฆด๋ฆฌ์Šค์˜ ๋ณ€๊ฒฝ ์‚ฌํ•ญ ์ค‘์—๋Š” HTTPS์šฉ ํด๋ผ์ด์–ธํŠธ ์—”๋“œํฌ์ธํŠธ ํ•ธ๋“ค๋Ÿฌ ํฌํ•จ, ์ผ๋ฐ˜์ ์ธ ํ…Œ์ŠคํŠธ ํ•ธ๋“ค๋Ÿฌ๋ฅผ ๋ณ„๋„์˜ ํŒŒ์ผ๋กœ ๋ถ„๋ฆฌ, client.Populate API ๊ตฌํ˜„, armv7 ๋ฐ armv6 ํ”Œ๋žซํผ ์ง€์›, ๋ณ€๊ฒฝ ๊ธฐ๋Šฅ ๋“ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์„œ๋ฒ„์˜ ๋กœ๊น… ์ˆ˜์ค€์ž…๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€