์ธํ”„๋ผ์˜ ๋ ˆ๊ฑฐ์‹œ ์„œ๋น„์Šค

์•ˆ๋…•ํ•˜์„ธ์š”! ์ œ ์ด๋ฆ„์€ Pasha Chernyak์ด๊ณ  QIWI์˜ ์„ ๋„์ ์ธ ๊ฐœ๋ฐœ์ž์ž…๋‹ˆ๋‹ค. ์˜ค๋Š˜์€ ํ”ผํ•  ์ˆ˜ ์—†๋Š” ์ผ์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ๋ ˆ๊ฑฐ์‹œ์— ๋Œ€ํ•ด.

์งˆ๋ฌธ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ๋ ˆ๊ฑฐ์‹œ ์„œ๋น„์Šค๋ž€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? ๋ ˆ๊ฑฐ์‹œ ์„œ๋น„์Šค๋Š” ๊ฐœ๋ฐœ์ž๊ฐ€ ์ผ์ฃผ์ผ/์›”/๋…„ ๋™์•ˆ ์†๋Œ€์ง€ ์•Š์€ ์„œ๋น„์Šค์ธ๊ฐ€์š”? ์•„๋‹ˆ๋ฉด ๊ฒฝํ—˜์ด ๋ถ€์กฑํ•œ ํ”„๋กœ๊ทธ๋ž˜๋จธ, ์˜ˆ๋ฅผ ๋“ค์–ด ๊ท€ํ•˜๊ฐ€ XNUMX๋…„ ์ „์— ์ž‘์„ฑํ•œ ์„œ๋น„์Šค์ž…๋‹ˆ๊นŒ? ์ด์ œ ๋‹น์‹ ์€ ๋” ๋ฉ‹์ง€๊ณ  ๊ฒฝํ—˜๋„ ๋งŽ์•„์กŒ์Šต๋‹ˆ๋‹ค. ์•„๋‹ˆ๋ฉด ๋ ˆ๊ฑฐ์‹œ ์„œ๋น„์Šค๊ฐ€ ๋‹ค์‹œ๋Š” ์ปค๋ฐ‹ํ•˜์ง€ ์•Š๊ธฐ๋กœ ๊ฒฐ์ •ํ•˜๊ณ  ์ฒœ์ฒœํžˆ ๋Œ€์ฒด ์„œ๋น„์Šค๋ฅผ ์ค€๋น„ํ•˜๊ณ  ์žˆ๋Š” ์„œ๋น„์Šค์ธ๊ฐ€์š”? ์–ด์จŒ๋“  ์ด๋Ÿฐ ์„œ๋น„์Šค๋ฅผ ๋ฐฉ์น˜ํ•˜๊ณ  ์—…๋ฐ์ดํŠธํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์€ ๋‚˜์ค‘์— ํ„ฐ์งˆ ์ˆ˜ ์žˆ๋Š” ์‹œํ•œํญํƒ„์ด๋‹ค.

์ธํ”„๋ผ์˜ ๋ ˆ๊ฑฐ์‹œ ์„œ๋น„์Šค

QIWI๊ฐ€ ๋ ˆ๊ฑฐ์‹œ ์„œ๋น„์Šค๋ฅผ ์–ด๋–ป๊ฒŒ ์‚ฌ์šฉํ•˜๋Š”์ง€ ์‚ดํŽด๋ณด๊ธฐ ์ „์— ์›”๋ › ์„œ๋น„์Šค์— ์งˆ์„œ๋ฅผ ๋ถ€์—ฌํ•œ ๋ฐฉ๋ฒ•์„ ์•Œ๋ ค๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด์ œ 11๋…„ ๋™์•ˆ ๋‚˜๋Š” ๊ทธ ์„ฑ๊ณผ๋ฅผ ์ฑ…์ž„์ ธ ์™”์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ๊ฐ€ ์žˆ์œผ๋ฉด ํ•ญ์ƒ ๋‚˜ํ•œํ…Œ ๋จผ์ € ์ „ํ™”๋ฅผ ํ•ด์ค€๋‹ค. ์ €๋Š” ๋ณดํ†ต ์˜คํ›„ XNUMX์‹œ์— ๋‹ค๋ฅธ ์‚ฌ๋žŒ์—๊ฒŒ ์ „ํ™”ํ•  ์šฉ๊ธฐ๊ฐ€ ์—†์–ด์„œ ์•‰์•„์„œ ์šฐ๋ฆฌ ๋„๋ฉ”์ธ์˜ ๋ชจ๋“  ์„œ๋น„์Šค๋ฅผ ์•Œ์•„๋‚ด์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ ๋‚˜๋„ ๋ˆ„๊ตฌ์ฒ˜๋Ÿผ ๋ฐค์— ์ž๋Š” ๊ฑธ ์ข‹์•„ํ•ด์„œ ์ฐฉ์ทจ์— ๋Œ€์ฒ˜ํ•˜๋ ค๊ณ  ๋…ธ๋ ฅํ–ˆ๋‹ค. โ€œ์–˜๋“ค์•„, ์™œ ๋‚˜ํ•œํ…Œ ์ „ํ™”ํ•˜๋Š” ๊ฑฐ์•ผ?โ€ ์ด์— ๋Œ€ํ•ด ๋‚˜๋Š” โ€œ๋˜ ๋ˆ„๊ตฌ์š”?โ€์™€ ๊ฐ™์€ ๋งค์šฐ ๊ฐ„๊ฒฐํ•œ ๋Œ€๋‹ต์„ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ์„œ๋น„์Šค๋ฅผ ์ˆ˜๋ฆฌํ•˜๋Š”๋ฐ ์ง์›๋“ค์ด ๋ˆ„๊ตฌ์—๊ฒŒ ์ „ํ™”ํ•ด์•ผ ํ• ์ง€ ๋ชจ๋ฅด๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ Wallet ๋ฐฑ์—”๋“œ ํŒ€์˜ ํšŒ๊ณ  ์ค‘ ํ•˜๋‚˜์—์„œ ์šฐ๋ฆฌ๋Š” ์„œ๋น„์Šค, ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ๋ฐ ์ง€๊ฐ‘ ๋ชจ๋†€๋ฆฌ์Šค ๋ชฉ๋ก๊ณผ ์ด๋ฅผ ๋‹ด๋‹นํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์˜ ๋ชฉ๋ก์„ ์„œ๋ช…ํ•ด์•ผ ํ•œ๋‹ค๊ณ  ๊ฒฐ์ •ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ง•ํ›„๋Š” ํ•ฉ๋ฆฌ์ ์ธ ํ•œ๋„ ๋‚ด์—์„œ ์ผ๋ฐ˜์ ์œผ๋กœ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

๋ˆ„๊ฐ€ ๋ฌด์—‡์„ ์ฑ…์ž„์ง€๊ณ  ์žˆ๋Š”์ง€์— ๋Œ€ํ•œ ์ •๋ณด ์™ธ์—๋„ ์„œ๋น„์Šค ์†Œ์œ ์ž๋Š” ๋ˆ„๊ตฌ์ธ์ง€, ์„œ๋น„์Šค ๊ฐœ๋ฐœ, ์•„ํ‚คํ…์ฒ˜ ๋ฐ ๋ผ์ดํ”„์‚ฌ์ดํด์„ ๋‹ด๋‹นํ•˜๋Š” ์‚ฌ๋žŒ์€ ๋ˆ„๊ตฌ์ธ์ง€์— ๋Œ€ํ•œ ๋‹ต๋ณ€์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์„œ๋น„์Šค๋ฅผ ๋‹ด๋‹นํ•˜๋Š” ์‚ฌ๋žŒ์€ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด ์ด๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š” ์‚ฌ๋žŒ์ž…๋‹ˆ๋‹ค. ์„œ๋น„์Šค ์†Œ์œ ์ž๋Š” ์ปค๋ฐ‹์— +2๋ฅผ ๋‚จ๊ธธ ๊ถŒ๋ฆฌ๊ฐ€ ์žˆ์œผ๋ฉฐ, ์ด ์„œ๋น„์Šค๊ฐ€ ์ƒˆ๋กœ์šด ์ปค๋ฐ‹์„ ์ˆ˜๋ฝํ•˜๊ธฐ ์ „์— ์ฑ…์ž„์ž๋„ ๊ฒ€ํ† ์— ์ฐธ์„ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

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

ํ•˜์ง€๋งŒ QIWI๋Š” ์Šคํƒ€ํŠธ์—… ์ •์‹ ์„ ๊ทธ๋Œ€๋กœ ์œ ์ง€ํ•˜๋ฉด์„œ๋„ ๋Œ€๊ธฐ์—…์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ด๋ฏธ 12์‚ด์ด ๋˜์—ˆ๊ณ  ํŒ€์€ ๋ณ€ํ™”ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ๋žŒ๋“ค์€ ๋– ๋‚˜๊ณ , ์‚ฌ๋žŒ๋“ค์€ ์˜ค๊ณ , ์ƒˆ๋กœ์šด ํŒ€์ด ํ˜•์„ฑ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์šฐ๋ฆฌ๋Š” ์ƒ์†๋ฐ›์€ ๋„๋ฉ”์ธ์—์„œ ์—ฌ๋Ÿฌ ์„œ๋น„์Šค๋ฅผ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค. ์ผ๋ถ€๋Š” ๋‹ค๋ฅธ ํŒ€์˜ ๊ฐœ๋ฐœ์ž์—๊ฒŒ์„œ ์™”๊ณ , ์ผ๋ถ€๋Š” ๋‹จ์ˆœํžˆ ์›”๋ ›๊ณผ ๊ฐ„์ ‘์ ์œผ๋กœ ๊ด€๋ จ๋˜์–ด ์žˆ์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด์ œ ๋Œ€์ฐจ๋Œ€์กฐํ‘œ์— ์„œ๋น„์Šค๊ฐ€ ํฌํ•จ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋ฌด์—‡์ด ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€ ์ดํ•ด - ์™œ? ์„œ๋น„์Šค๋Š” ์ž‘๋™ํ•˜๋ฉฐ ํ™•์‹คํžˆ ๊ฐœ์„ ํ•ด์•ผ ํ•  ์ œํ’ˆ ๊ธฐ๋Šฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

์–ด๋–ป๊ฒŒ ์ผ์–ด๋‚˜๋Š”๊ฐ€

๊ทธ๋Ÿฌ๋‚˜ ์–ด๋Š ์‹œ์ ์—์„œ ์šฐ๋ฆฌ๋Š” ์„œ๋น„์Šค๊ฐ€ ๊ธฐ๋Šฅ ์ˆ˜ํ–‰์„ ์ค‘๋‹จํ•˜๊ณ  ๋ฌด์–ธ๊ฐ€๊ฐ€ ์†์ƒ๋˜์—ˆ์Œ์„ ๋ฐœ๊ฒฌํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ƒํ™ฉ์—์„œ๋Š” ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ•ฉ๋‹ˆ๊นŒ? ์„œ๋น„์Šค๊ฐ€ ๋‹จ์ˆœํžˆ ์ž‘๋™์„ ๋ฉˆ์ท„์Šต๋‹ˆ๋‹ค. ์กฐ๊ธˆ๋„. ๊ทธ๋ฆฌ๊ณ  ์šฐ๋ฆฌ๋Š” ์ด๊ฒƒ์— ๋Œ€ํ•ด ์ฒซ์งธ๋กœ ์šฐ์—ฐํžˆ ์•Œ๊ฒŒ ๋˜์—ˆ๊ณ  ๋‘˜์งธ๋กœ XNUMX๊ฐœ์›” ํ›„์— ์•Œ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ์ผ์ด ์ผ์–ด๋‚œ๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ์•„๋Š” ์œ ์ผํ•œ ๊ฒƒ์€ ์„œ๋น„์Šค๊ฐ€ ๋ฐฐํฌ๋  ๊ฐ€์ƒ ๋จธ์‹ , ํ•ด๋‹น ์†Œ์Šค๊ฐ€ ์–ด๋””์— ์žˆ๋Š”์ง€, ๊ทธ๊ฒŒ ์ „๋ถ€์˜€์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” git clone์„ ํ•˜๊ณ  ๋ช‡ ๋…„ ์ „์— ์ด ๊ธ€์„ ์“ด ์‚ฌ๋žŒ์˜ ๋งˆ์Œ ์†์œผ๋กœ ๋“ค์–ด๊ฐ€์ง€๋งŒ, ์šฐ๋ฆฌ๋Š” ๋ฌด์—‡์„ ๋ณด๊ฒŒ ๋ ๊นŒ์š”? ์šฐ๋ฆฌ์—๊ฒŒ ์นœ์ˆ™ํ•œ Spring Boot๋Š” ์—†์Šต๋‹ˆ๋‹ค. ๋น„๋ก ์šฐ๋ฆฌ๊ฐ€ ๋ชจ๋“  ๊ฒƒ์— ์ต์ˆ™ํ•˜๋”๋ผ๋„ ์šฐ๋ฆฌ๋Š” ์ „์ฒด ์Šคํƒ๊ณผ ๊ทธ ๋ชจ๋“  ๊ฒƒ์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์–ด์ฉŒ๋ฉด ๊ฑฐ๊ธฐ์— Spring Framework๊ฐ€ ์žˆ์„๊นŒ์š”? ํ•˜์ง€๋งŒ.

์ด ๋ชจ๋“  ๊ฒƒ์„ ์“ด ์‚ฌ๋žŒ์€ ํž˜๋“  ์‚ฌ๋žŒ์ด์—ˆ๊ณ  ๋ชจ๋“  ๊ฒƒ์„ ์ˆœ์ˆ˜ Java๋กœ ์ผ์Šต๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ์ผ๋ฐ˜์ ์ธ ๋„๊ตฌ๊ฐ€ ์—†์œผ๋ฉฐ ์•„์ด๋””์–ด๊ฐ€ ๋– ์˜ค๋ฆ…๋‹ˆ๋‹ค. ์ด ๋ชจ๋“  ๊ฒƒ์„ ๋‹ค์‹œ ์ž‘์„ฑํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฉฐ ๋ชจ๋“  ํ† ์Šคํ„ฐ์—์„œ "์–˜๋“ค์•„, ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค๊ฐ€ ๋ฐ”๋กœ ๋‹น์‹ ์—๊ฒŒ ํ•„์š”ํ•œ ๊ฑฐ์•ผ!"๋ผ๋Š” ๋ง์ด ๋‚˜์˜ต๋‹ˆ๋‹ค. ๊ฐ‘์ž๊ธฐ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด ์นจ์ฐฉํ•˜๊ฒŒ ์–ด๋–ค ์–ธ์–ด๋ฅผ ์‚ฌ์šฉํ•˜๋“  ๋ชจ๋“  ๊ฒƒ์ด ์ž˜ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ฌธ์ œ๋Š” ์ด์ œ ์ด ์„œ๋น„์Šค๋ฅผ ๋‹ด๋‹นํ•˜๋Š” ๊ณ ๊ฐ์ด ์—†๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ์—๊ฒŒ๋Š” ์–ด๋–ค ๋น„์ฆˆ๋‹ˆ์Šค ์š”๊ตฌ ์‚ฌํ•ญ์ด ์žˆ์—ˆ๊ณ , ์ด ์„œ๋น„์Šค๋Š” ์–ด๋–ค ์—ญํ• ์„ ํ•ด์•ผ ํ•ฉ๋‹ˆ๊นŒ? ๊ทธ๋ฆฌ๊ณ  ์ด ์„œ๋น„์Šค๋Š” ๋น„์ฆˆ๋‹ˆ์Šค ํ”„๋กœ์„ธ์Šค์— ๊ธด๋ฐ€ํ•˜๊ฒŒ ํ†ตํ•ฉ๋ฉ๋‹ˆ๋‹ค.

์ด์ œ ๋น„์ฆˆ๋‹ˆ์Šค ์š”๊ตฌ ์‚ฌํ•ญ์„ ์•Œ์ง€ ๋ชปํ•œ ์ฑ„ ์„œ๋น„์Šค๋ฅผ ๋‹ค์‹œ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์ด ์–ผ๋งˆ๋‚˜ ์‰ฌ์šด๊ฐ€์š”? ์„œ๋น„์Šค๊ฐ€ ์–ด๋–ป๊ฒŒ ๊ธฐ๋ก๋˜๋Š”์ง€ ๋ช…ํ™•ํ•˜์ง€ ์•Š์œผ๋ฉฐ ์ธก์ •ํ•ญ๋ชฉ์ด ์žˆ๋Š”์ง€ ์—ฌ๋ถ€๋„ ์•Œ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์ด ๋ฌด์—‡์ธ์ง€๋Š” ๋”์šฑ ์•Œ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋™์‹œ์— ์„œ๋น„์Šค์—๋Š” ์ดํ•ดํ•  ์ˆ˜ ์—†๋Š” ๋น„์ฆˆ๋‹ˆ์Šค ๋…ผ๋ฆฌ ํด๋ž˜์Šค๊ฐ€ ์—„์ฒญ๋‚˜๊ฒŒ ๋งŽ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์–ด๋–ค ์ข…๋ฅ˜์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—๋Š” ์šฐ๋ฆฌ๊ฐ€ ์•„์ง ์•„๋ฌด๊ฒƒ๋„ ๋ชจ๋ฅด๋Š” ๊ฒƒ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์–ด๋””์„œ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ด์•ผํ• ๊นŒ์š”?

๊ฐ€์žฅ ๋…ผ๋ฆฌ์ ์ธ ๊ด€์ ์—์„œ ๋ณด๋ฉด ํ…Œ์ŠคํŠธ์˜ ๊ฐ€์šฉ์„ฑ์ž…๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ๊ฑฐ๊ธฐ์—๋Š” ์ตœ์†Œํ•œ ๋ช‡ ๊ฐ€์ง€ ๋…ผ๋ฆฌ๊ฐ€ ์ž‘์„ฑ๋˜์–ด ์žˆ์œผ๋ฉฐ ๋ฌด์Šจ ์ผ์ด ์ผ์–ด๋‚˜๊ณ  ์žˆ๋Š”์ง€ ๊ฒฐ๋ก ์„ ๋‚ด๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ TDD๋Š” ์œ ํ–‰์ด์ง€๋งŒ 5๋…„ ์ „์—๋Š” ๋ชจ๋“  ๊ฒƒ์ด ์ง€๊ธˆ๊ณผ ๊ฑฐ์˜ ๊ฐ™์•˜์Šต๋‹ˆ๋‹ค. ๋‹จ์œ„ ํ…Œ์ŠคํŠธ๋„ ๊ฑฐ์˜ ์—†๊ณ  ์šฐ๋ฆฌ์—๊ฒŒ ์•„๋ฌด ๊ฒƒ๋„ ์•Œ๋ ค์ฃผ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ธ€์Ž„, ์•„๋งˆ๋„ ์ผ์ข…์˜ ํ™•์ธ์„ ์ œ์™ธํ•˜๊ณ  ์ผ๋ถ€ XML์ด ์ผ๋ถ€ ์‚ฌ์šฉ์ž ์ •์˜ ์ธ์ฆ์„œ๋กœ ์„œ๋ช…๋˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š” ์ฝ”๋“œ์—์„œ ์•„๋ฌด๊ฒƒ๋„ ์ดํ•ดํ•  ์ˆ˜ ์—†์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ€์ƒ ๋จธ์‹ ์— ๋ฌด์—‡์ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๋Ÿฌ๊ฐ”์Šต๋‹ˆ๋‹ค. ์„œ๋น„์Šค ๋กœ๊ทธ๋ฅผ ์—ด์–ด๋ณด๋‹ˆ http ํด๋ผ์ด์–ธํŠธ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ๊ฒฌ๋˜์—ˆ์œผ๋ฉฐ, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฆฌ์†Œ์Šค์— ๋‚ด์žฅ๋œ ์ž์ฒด ์„œ๋ช… ์ธ์ฆ์„œ๊ฐ€ ๋ป”๋ป”์Šค๋Ÿฝ๊ฒŒ ์ฉ์—ˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๋ถ„์„๊ฐ€์—๊ฒŒ ์—ฐ๋ฝํ•˜์—ฌ ์ƒˆ ์ธ์ฆ์„œ๋ฅผ ์š”์ฒญํ•˜๊ณ  ์ด๋ฅผ ๋ฐœํ–‰ํ–ˆ์œผ๋ฉฐ ์„œ๋น„์Šค๊ฐ€ ๋‹ค์‹œ ์ž‘๋™ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒŒ ์ „๋ถ€์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์•„๋‹ˆ๋ฉด? ๊ฒฐ๊ตญ ์„œ๋น„์Šค๋Š” ์ž‘๋™ํ•˜๊ณ  ๋น„์ฆˆ๋‹ˆ์Šค์— ํ•„์š”ํ•œ ์ผ๋ถ€ ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์„ ์œ„ํ•œ ํŠน์ • ํ‘œ์ค€์„ ๊ฐ–๊ณ  ์žˆ์œผ๋ฉฐ, ์•„๋งˆ๋„ ์—ฌ๋Ÿฌ๋ถ„๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋…ธ๋“œ์˜ ๋กœ๊ทธ๋ฅผ ํด๋”์— ์ €์žฅํ•˜์ง€ ๋ง๊ณ  Elastic ๊ฐ™์€ ์ผ์ข…์˜ ์ €์žฅ์†Œ์— ์ €์žฅํ•˜๊ณ  Kibana์—์„œ ์‚ดํŽด๋ณด์„ธ์š”. ํ™ฉ๊ธˆ ์ง€ํ‘œ๋ฅผ ๊ธฐ์–ตํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฆ‰, ์„œ๋น„์Šค ๋ถ€ํ•˜, ์„œ๋น„์Šค ์š”์ฒญ ์ˆ˜, ์ƒ์กด ์—ฌ๋ถ€, ์ƒํƒœ ์ ๊ฒ€ ์ง„ํ–‰ ์ƒํ™ฉ ๋“ฑ์ž…๋‹ˆ๋‹ค. ์ตœ์†Œํ•œ ์ด๋Ÿฌํ•œ ์ง€ํ‘œ๋Š” ๋ช…ํ™•ํ•œ ์–‘์‹ฌ์„ ๊ฐ€์ง€๊ณ  ์–ธ์ œ ์„œ๋น„์Šค๋ฅผ ์ค‘๋‹จํ•˜๊ณ  ๋‚˜์œ ๊ฟˆ์ฒ˜๋Ÿผ ์žŠํ˜€์งˆ ์ˆ˜ ์žˆ๋Š”์ง€๋ฅผ ์•„๋Š” ๋ฐ ๋„์›€์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ฌด์—‡์„

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

๊ฐ€์žฅ ์ค‘์š”ํ•œ ๊ฒƒ์€ ์ด ๋ชจ๋“  ์œ ์šฉํ•œ ์ž์› ๋ด‰์‚ฌ ํ™œ๋™์ด ์–ผ๋งˆ๋‚˜ ์˜ค๋ž˜ ๊ฑธ๋ฆด ๊ฒƒ์ธ๊ฐ€์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๊ธฐ์ˆ  ๋ถ€์ฑ„๊ฐ€ 20%์ธ ๋™์•ˆ ๊ฒฝํ—˜์ด ์–ด๋Š ์ •๋„ ์žˆ๋Š” ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ์Šคํ”„๋ฆฐํŠธ XNUMXํšŒ. ํŠน์ • ๊ตญ๊ฐ€ ์‹œ์Šคํ…œ๊ณผ์˜ ์˜์‚ฌ์†Œํ†ต์— ๋‚ด์žฌ๋œ ๋…ผ๋ฆฌ๋ฅผ ๋ชจ๋‘ ์ดํ•ดํ•˜๊ณ  ์ด๋ฅผ ์ƒˆ๋กœ์šด ๊ธฐ์ˆ ๋กœ ๊ฐ€์ ธ์˜ค๋Š” ๋ฐ ์–ผ๋งˆ๋‚˜ ์‹œ๊ฐ„์ด ๊ฑธ๋ ธ๋‚˜์š”? ๋‚˜๋Š” ์ด๊ฒƒ์„ ๋ณด์ฆํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์•„๋งˆ๋„ ํ•œ ๋‹ฌ ๋˜๋Š” ๋‘ ๋‹ฌ ์ •๋„ ํŒ€ ์ž‘์—…์ด ํ•„์š”ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” ํ˜„์žฌ ์ƒˆ๋กœ์šด ์„œ๋น„์Šค์™€์˜ ํ†ตํ•ฉ ๊ฒฝํ—˜์„ ํ†ตํ•ด ์ด๋ ‡๊ฒŒ ๋งํ•ฉ๋‹ˆ๋‹ค.

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

์ด์— ๋ ˆ๊ฑฐ์‹œ ์„œ๋น„์Šค๋ฅผ ์–ด๋–ป๊ฒŒ ํ•  ๊ฒƒ์ธ์ง€์— ๋Œ€ํ•œ ๊ณ„ํš์„ ์„ธ์›Œ๋ณด๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค.

๋ ˆ๊ฑฐ์‹œ๋ฅผ ์ฒ˜์Œ๋ถ€ํ„ฐ ๋‹ค์‹œ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์€ ๋‚˜์œ ์ƒ๊ฐ์ž…๋‹ˆ๋‹ค.
์ง„์ง€ํ•˜๊ฒŒ, ๊ทธ๊ฒƒ์— ๋Œ€ํ•ด ์ƒ๊ฐํ•  ํ•„์š”์กฐ์ฐจ ์—†์Šต๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ๊ทธ๊ฒƒ์„ ์ข‹์•„ํ•œ๋‹ค๋Š” ๊ฒƒ์€ ๋ถ„๋ช…ํ•˜๊ณ  ๋ช‡ ๊ฐ€์ง€ ์žฅ์ ์ด ์žˆ์ง€๋งŒ ์ผ๋ฐ˜์ ์œผ๋กœ ์ž์‹ ์„ ํฌํ•จํ•˜์—ฌ ๋ˆ„๊ตฌ๋„ ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํ•ธ๋“œ๋ถ
์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์ฐพ์•„๋‚ด๊ณ , ๋ฌด์—‡์ด ์–ด๋””์— ์žˆ๊ณ  ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€ ์•Œ๋ ค์ฃผ๋Š” ์ฐธ์กฐ์„œ๋ฅผ ๋งŒ๋“ค๊ณ , ๊ฑฐ๊ธฐ์— ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ ์„ค๋ช…(์กฐ๊ฑด๋ถ€ readme.md)์„ ์ž…๋ ฅํ•˜์—ฌ ๋กœ๊ทธ์™€ ๋ฉ”ํŠธ๋ฆญ์ด ์žˆ๋Š” ์œ„์น˜๋ฅผ ๋น ๋ฅด๊ฒŒ ์ดํ•ดํ•˜์„ธ์š”. ์ด ๋ฌธ์ œ๋ฅผ ์ฒ˜๋ฆฌํ•ด ์ค„ ๊ฐœ๋ฐœ์ž๋Š” ๊ฐ์‚ฌ ์ธ์‚ฌ๋งŒ ์ „ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋„๋ฉ”์ธ ์ดํ•ด
๋„๋ฉ”์ธ์„ ์†Œ์œ ํ•˜๊ณ  ์žˆ๋‹ค๋ฉด ์ตœ์‹  ์ •๋ณด๋ฅผ ๊ณ„์† ํ™•์ธํ•˜์„ธ์š”. ์‚ฌ์†Œํ•˜๊ฒŒ ๋“ค๋ฆฌ๊ฒ ์ง€๋งŒ ๋ชจ๋“  ์‚ฌ๋žŒ์ด ์„œ๋น„์Šค๊ฐ€ ๋‹จ์ผ ํ‚ค์— ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๋Š” ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ํ•˜๋‚˜์˜ ํ‘œ์ค€์œผ๋กœ ์ž‘์—…ํ•˜๋Š” ๊ฒƒ์ด ์‹ค์ œ๋กœ ํ›จ์”ฌ ์‰ฝ์Šต๋‹ˆ๋‹ค.

๋“ฑ๋ก๋œ ์‚ฌ์šฉ์ž๋งŒ ์„ค๋ฌธ ์กฐ์‚ฌ์— ์ฐธ์—ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋กœ๊ทธ์ธ์ œ๋ฐœ

๋‹น์‹ ์€ ๋‹น์‹ ์˜ ์œ ์‚ฐ์œผ๋กœ ๋ฌด์—‡์„ ํ•ฉ๋‹ˆ๊นŒ?

  • 31.5%์ฒ˜์Œ๋ถ€ํ„ฐ ๋‹ค์‹œ ์“ฐ๋Š” ์ค‘์ธ๋ฐ ๋” ์ •ํ™•ํ•ด์š” 12

  • 52.6%๋„ˆ๋ž‘ ๊ฑฐ์˜ ๋˜‘๊ฐ™์•„20

  • 10.5%์šฐ๋ฆฌ๋Š” ์œ ์‚ฐ์ด ์—†์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์œ„๋Œ€ํ•ฉ๋‹ˆ๋‹ค4

  • 5.2%๋Œ“๊ธ€๋กœ ์“ธ๊ฒŒ์š”2

38๋ช…์˜ ์‚ฌ์šฉ์ž๊ฐ€ ํˆฌํ‘œํ–ˆ์Šต๋‹ˆ๋‹ค. 20๋ช…์˜ ์‚ฌ์šฉ์ž๊ฐ€ ๊ธฐ๊ถŒํ–ˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : habr.com

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