DevOps์˜ ์œ ๋ž˜: ์ด๋ฆ„์ด ๋ฌด์—‡์ธ๊ฐ€์š”?

ํ—ค์ด ํ•˜๋ธŒ๋ฅด! ๋‚˜๋Š” ๊ธฐ์‚ฌ์˜ ๋ฒˆ์—ญ์„ ๋‹น์‹ ์˜ ๊ด€์‹ฌ์— ์ œ์‹œํ•ฉ๋‹ˆ๋‹ค "DevOps์˜ ๊ธฐ์›: ์ด๋ฆ„์—๋Š” ๋ฌด์—‡์ด ์žˆ๋‚˜์š”?" ์Šคํ‹ฐ๋ธŒ ๋ฉ”์ž‘ ์ง€์Œ.

๊ด€์ ์— ๋”ฐ๋ผ DevOps๋Š” ์˜ฌํ•ด๋กœ 2016์ฃผ๋…„ ๋˜๋Š” 70์ฃผ๋…„์„ ๋งž์ดํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. XNUMX๋…„ RightScales์˜ ํด๋ผ์šฐ๋“œ ํ˜„ํ™ฉ ๋ณด๊ณ ์„œ์—์„œ๋Š” SMB์˜ XNUMX%๊ฐ€ DevOps ๋ฐฉ์‹์„ ์ฑ„ํƒํ•˜๊ณ  ์žˆ๋‹ค๊ณ  ๋ฐํ˜”์Šต๋‹ˆ๋‹ค. ์ด ์ ์ˆ˜๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ชจ๋“  ์ง€ํ‘œ๋Š” ๊ทธ ์ดํ›„๋กœ ์ฆ๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. DevOps๊ฐ€ ๋‘ ๋ฒˆ์งธ XNUMX๋…„์„ ๋งž์ดํ•  ์ค€๋น„๋ฅผ ํ•˜๋ฉด์„œ ๊ณผ๊ฑฐ๋ฅผ ๋˜๋Œ์•„๋ณด๊ณ  DevOps์˜ ๊ธฐ์›์€ ๋ฌผ๋ก  ์ด๋ฆ„ ์ž์ฒด์˜ ๊ธฐ์›๊นŒ์ง€ ๋Œ์•„๊ฐ€๋Š” ๊ฒƒ์ด ์ข‹์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

2007๋…„ ์ด์ „: ์™„๋ฒฝํ•œ ์ผ๋ จ์˜ ์‚ฌ๊ฑด

2007๋…„ ์ด์ „์—๋Š” ์ผ๋ จ์˜ ์ƒํ™ฉ์ด ๊ฒฐ๊ตญ ์˜ค๋Š˜๋‚  DevOps๋กœ ์•Œ๋ ค์ง„ ๊ฒƒ์„ ํƒ„์ƒ์‹œ์ผฐ์Šต๋‹ˆ๋‹ค.

๊ธฐ๋Œ€๋‹ค ์ด๋ฏธ ๋ชจ๋ฒ” ์‚ฌ๋ก€์ž„์ด ์ž…์ฆ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ~์œผ๋กœ ์•Œ๋ ค์ง„ ํ† ์š”ํƒ€ ์ƒ์‚ฐ ์‹œ์Šคํ…œ, ๋ฆฐ ์ œ์กฐ(Lean Manufacturing)๋Š” ์ œ์กฐ ํ˜„์žฅ์˜ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ตœ์ ํ™”ํ•˜๊ธฐ ์œ„ํ•ด ๋…ธ๋ ฅํ•ฉ๋‹ˆ๋‹ค. (๊ทธ๋Ÿฐ๋ฐ Toyota ๊ฒฝ์˜์ง„์€ ์ฒ˜์Œ์— Ford Motor Company๊ฐ€ ๋„์ž…ํ•œ ์›๋ž˜์˜ ์กฐ๋ฆฝ ๋ผ์ธ ๋ฐฉ๋ฒ•์—์„œ ์˜๊ฐ์„ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค.) ์ง€์†์ ์ธ ๊ฐœ์„  ๋ฆฐ ์ œ์กฐ(Lean Manufacturing)๋ฅผ ์œ„ํ•œ ์ฃผ๋ฌธ์ž…๋‹ˆ๋‹ค. ์‹ค์ œ๋กœ ๋‹ค์Œ ๊ฒฝ๋กœ๊ฐ€ ์ง€์†์ ์œผ๋กœ ํ‰๊ฐ€๋ฉ๋‹ˆ๋‹ค.

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

IT ์„ธ๊ณ„์—์„œ๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์˜ ํญํฌ์ˆ˜ ๋ชจ๋ธ์ด๋ผ๋Š” ์ „ํ†ต์ ์ธ ๋ฐฉ๋ฒ•์ด ์ด๋ฏธ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋น ๋ฅธ ๋ฐ˜๋ณต ๋ฐฉ๋ฒ•์œผ๋กœ ๋Œ€์ฒด๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ฏผํ•œ. ๋น ๋ฅธ ๊ฐœ๋ฐœ๊ณผ ๋ฐฐํฌ๋ฅผ ์ถ”๊ตฌํ•˜๋‹ค ํ’ˆ์งˆ์ด ์ €ํ•˜๋˜๋Š” ๊ฒฝ์šฐ๋„ ์žˆ์—ˆ์ง€๋งŒ ์†๋„๋Š” ์ง‘๊ฒฐ์˜ ์™ธ์นจ์ด์—ˆ์Šต๋‹ˆ๋‹ค. ๊ฑฐ์˜ ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…, ํŠนํžˆ ์„œ๋น„์Šค๋กœ์„œ์˜ ์ธํ”„๋ผ (IaaS) ๋ฐ Service-as-a-Service (PaaS)๋Š” IT ํ”„๋กœ์„ธ์Šค ๋ฐ ์ธํ”„๋ผ์—์„œ ์„ฑ์ˆ™ํ•œ ์†”๋ฃจ์…˜์œผ๋กœ ์ž…์ฆ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๋งˆ์ง€๋ง‰์œผ๋กœ ์ตœ๊ทผ ํˆดํ‚ท์ด ๋“ฑ์žฅํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ง€์†์ ์ธ ํ†ตํ•ฉ (CI). CI ๋„๊ตฌ์˜ ์•„์ด๋””์–ด๋Š” 1991๋…„ Gradi Booch์˜ Booch Method์—์„œ ํƒ„์ƒํ•˜๊ณ  ์ œ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

2007-2008: ์‹ค๋งํ•œ ๋ฒจ๊ธฐ์—์ธ

๋ฒจ๊ธฐ์— ์ปจ์„คํ„ดํŠธ์ด์ž Agile ํ”„๋กœ์ ํŠธ ๋ฐ ์‹ค๋ฌด ๊ด€๋ฆฌ์ž์ธ Patrick Debois๋Š” ๋ฐ์ดํ„ฐ ์„ผํ„ฐ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์„ ๋•๊ธฐ ์œ„ํ•ด ๋ฒจ๊ธฐ์— ์ •๋ถ€ ๋ถ€์ฒ˜๋กœ๋ถ€ํ„ฐ ์ž„๋ช…์„ ์ˆ˜๋ฝํ–ˆ์Šต๋‹ˆ๋‹ค. ํŠนํžˆ ๊ทธ๋Š” ์ธ์ฆ ๋ฐ ์ค€๋น„ ํ…Œ์ŠคํŠธ์— ์ฐธ์—ฌํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ํŒ€๊ณผ ์„œ๋ฒ„, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ฐ ๋„คํŠธ์›Œํฌ ์šด์˜ ํŒ€ ๊ฐ„์˜ ๊ด€๊ณ„๋ฅผ ์กฐ์ •ํ•˜๊ณ  ๊ตฌ์ถ•ํ•˜๋Š” ์ฑ…์ž„์„ ๋งก์•˜์Šต๋‹ˆ๋‹ค. ๊ฒฐ์†๋ ฅ ๋ถ€์กฑ, ๊ฐœ๋ฐœ๊ณผ ์šด์˜ ๋ฐฉ์‹์˜ ๋ฒฝ์— ๋Œ€ํ•œ ์ขŒ์ ˆ๊ฐ์€ ๊ทธ๋ฅผ ์”์“ธํ•˜๊ฒŒ ๋งŒ๋“ค์—ˆ๋‹ค. ๊ฐœ์„ ํ•˜๋ ค๋Š” Desbois์˜ ์—ด๋ง์€ ๊ณง ๊ทธ๋ฅผ ํ–‰๋™์œผ๋กœ ์ด๋Œ์—ˆ์Šต๋‹ˆ๋‹ค.
2008๋…„ ํ† ๋ก ํ† ์—์„œ ์—ด๋ฆฐ Agile ์ปจํผ๋Ÿฐ์Šค์—์„œ Andrew Schaefer๋Š” ""๋ผ๋Š” ์ฃผ์ œ๋ฅผ ๋…ผ์˜ํ•˜๊ธฐ ์œ„ํ•ด ํŠน๋ณ„ํžˆ ์ค€๋น„๋œ ๋น„๊ณต์‹ ํšŒ์˜๋ฅผ ์ฃผ์ตœํ•  ๊ฒƒ์„ ์ œ์•ˆํ–ˆ์Šต๋‹ˆ๋‹ค.๋ฏผ์ฒฉํ•œ ์ธํ”„๋ผ"๊ทธ๋ฆฌ๊ณ  ์ฃผ์ œ๋ฅผ ๋…ผ์˜ํ•˜๊ธฐ ์œ„ํ•ด ๋‹จ ํ•œ ์‚ฌ๋žŒ๋งŒ ์™”์Šต๋‹ˆ๋‹ค. Patrick DeBois์ž…๋‹ˆ๋‹ค. ๊ทธ๋“ค์˜ ํ† ๋ก ๊ณผ ์•„์ด๋””์–ด ๊ตํ™˜์€ Agile ์‹œ์Šคํ…œ ๊ด€๋ฆฌ์˜ ๊ฐœ๋…์„ ๋ฐœ์ „์‹œ์ผฐ์Šต๋‹ˆ๋‹ค. ๊ฐ™์€ ํ•ด DeBois์™€ Schaefer๋Š” Google์—์„œ ์–ด๋Š ์ •๋„ ์„ฑ๊ณต์ ์ธ Agile Systems Administrator ๊ทธ๋ฃน์„ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค.

2009๋…„: Dev์™€ Ops์˜ ํ˜‘๋ ฅ ์‚ฌ๋ก€

O'Reilly Velocity ์ปจํผ๋Ÿฐ์Šค์—์„œ ๋‘ ๋ช…์˜ Flickr ์ง์›, ๊ธฐ์ˆ  ์šด์˜ ๋‹ด๋‹น ์ˆ˜์„ ๋ถ€์‚ฌ์žฅ John Allspaw์™€ CTO Paul Hammond๊ฐ€ ํ˜„์žฌ ์œ ๋ช…ํ•œ ํ”„๋ ˆ์  ํ…Œ์ด์…˜์„ ์ง„ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค. "ํ•˜๋ฃจ 10๊ฑด์˜ ๋ฐฐํฌ: Flickr์˜ ๊ฐœ๋ฐœ ๋ฐ ์šด์˜ ํ˜‘์—…".

ํ”„๋ ˆ์  ํ…Œ์ด์…˜์€ ๋“œ๋ผ๋งˆ ๊ฐ™์•˜์Šต๋‹ˆ๋‹ค. Allspaw์™€ Hammond๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๋ฐฐํฌ ๊ณผ์ •์—์„œ ๊ฐœ๋ฐœ๊ณผ ์šด์˜ ๋‹ด๋‹น์ž ์‚ฌ์ด์˜ ๋ณต์žกํ•œ ์ƒํ˜ธ ์ž‘์šฉ์„ ์žฌ์—ฐํ•˜๋ฉด์„œ โ€œ์ด๊ฑด ๋‚ด ์ฝ”๋“œ๊ฐ€ ์•„๋‹ˆ๊ณ  ๋ชจ๋‘ ๋‹น์‹ ์˜ ์ปดํ“จํ„ฐ์ž…๋‹ˆ๋‹ค!โ€๋ผ๋Š” ๋ฌธ๊ตฌ์— ๋”ฐ๋ผ ์†๊ฐ€๋ฝ์งˆํ•˜๊ณ  ๋น„๋‚œํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋“ค์˜ ํ”„๋ ˆ์  ํ…Œ์ด์…˜์„ ํ†ตํ•ด ์œ ์ผํ•œ ํ•ฉ๋ฆฌ์ ์ธ ์˜ต์…˜์€ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ๋ฐ ๋ฐฐํฌ ํ™œ๋™์ด ์›ํ™œํ•˜๊ณ  ํˆฌ๋ช…ํ•˜๋ฉฐ ์™„์ „ํžˆ ํ†ตํ•ฉ๋˜๋Š” ๊ฒƒ์ž„์„ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค. ์‹œ๊ฐ„์ด ์ง€๋‚จ์— ๋”ฐ๋ผ ์ด ํ”„๋ ˆ์  ํ…Œ์ด์…˜์€ ์ „์„ค์ด ๋˜์—ˆ์œผ๋ฉฐ, ์ด์ œ๋Š” IT ์—…๊ณ„๊ฐ€ ์˜ค๋Š˜๋‚  DevOps๋กœ ์•Œ๋ ค์ง„ ๋ฐฉ๋ฒ•๋ก ์„ ์š”๊ตฌํ•˜๊ธฐ ์‹œ์ž‘ํ•œ ์—ญ์‚ฌ์  ์ด์ •ํ‘œ๋กœ ๊ฐ„์ฃผ๋ฉ๋‹ˆ๋‹ค.

2010๋…„: ๋ฏธ๊ตญ์˜ DevOps

์ถ”์ข…์ž๊ฐ€ ๋Š˜์–ด๋‚˜๋ฉด์„œ DevOpsDays ์ปจํผ๋Ÿฐ์Šค๋Š” ์—ฐ๋ก€ Velocity ์ปจํผ๋Ÿฐ์Šค ์งํ›„ ๋ฏธ๊ตญ ์บ˜๋ฆฌํฌ๋‹ˆ์•„์ฃผ ๋งˆ์šดํ‹ด๋ทฐ์—์„œ ์ฒ˜์Œ์œผ๋กœ ๊ฐœ์ตœ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. 2018๋…„์—๋Š” ๋ฏธ๊ตญ์—์„œ ์—ด๋ฆฌ๋Š” ์ˆ˜์‹ญ ๊ฑด์„ ํฌํ•จํ•ด 30๊ฐœ ์ด์ƒ์˜ DevOpsDays ์ปจํผ๋Ÿฐ์Šค๊ฐ€ ์˜ˆ์ •๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

2013: ํ”„๋กœ์ ํŠธ "ํ”ผ๋‹‰์Šค"

์šฐ๋ฆฌ ์ค‘ ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ DevOps ์—ญ์‚ฌ์ƒ ๋˜ ๋‹ค๋ฅธ ์ฃผ๋ชฉํ• ๋งŒํ•œ ์ˆœ๊ฐ„์€ Gene Kim, Kevin Behr ๋ฐ George Safford๊ฐ€ ์“ด "The Phoenix Project"๋ผ๋Š” ์ฑ…์˜ ์ถœํŒ์ด์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ์†Œ์„ค์€ ์ ˆ๋ฐ•ํ•œ ์ƒํ™ฉ์— ์ฒ˜ํ•œ IT ๊ด€๋ฆฌ์ž์˜ ์ด์•ผ๊ธฐ๋ฅผ ๋‹ด๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Š” ์ž˜๋ชป๋œ ์ค‘์š”ํ•œ ์ „์ž ์ƒ๊ฑฐ๋ž˜ ํ”„๋กœ์ ํŠธ๋ฅผ ๊ตฌ์ถœํ•˜๋Š” ์ž„๋ฌด๋ฅผ ๋งก๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋ฆฐ ์ œ์กฐ ๋ฐฉ์‹์— ์—ด์ •์„ ๊ฐ–๊ณ  ์žˆ๋Š” ์ด์‚ฌํšŒ ๋ฉค๋ฒ„์ธ ๊ด€๋ฆฌ์ž์˜ ์‹ ๋น„ํ•œ ๋ฉ˜ํ† ๋Š” DevOps์˜ ๊ฐœ๋…์„ ์˜ˆ์ƒํ•˜๋ฉฐ IT ๋ฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์— ๋Œ€ํ•ด ์ƒ๊ฐํ•  ์ˆ˜ ์žˆ๋Š” ์ƒˆ๋กœ์šด ๋ฐฉ๋ฒ•์„ ์ฃผ์ธ๊ณต์—๊ฒŒ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ "The Phoenix Project"๋Š” ์ƒˆ๋กœ์šด ์ฃผ์š” ์•„์›ƒ์†Œ์‹ฑ ์ œํ’ˆ์„ ๊ฐœ๋ฐœํ•˜๋Š” ๋™์•ˆ ์†Œํ”„ํŠธ์›จ์–ด ๋ถ€์‚ฌ์žฅ์ด DevOps๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์œ ์‚ฌํ•œ ๋น„์ฆˆ๋‹ˆ์Šค ์Šคํ† ๋ฆฌ์— ๋Œ€ํ•ด "Outsource or else..."๋ผ๋Š” ์ฑ…์„ ์“ฐ๋„๋ก ์˜๊ฐ์„ ์ฃผ์—ˆ์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ DevOps

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

์ง€๋‚œ 2018๋…„ ๋™์•ˆ DevOps๊ฐ€ ์‹œ์ž‘๋œ ์ดํ›„ ๋งŽ์€ ์„ฑ๊ณผ๋ฅผ ๊ฑฐ๋‘์—ˆ์œผ๋ฉฐ XNUMX๋…„๊ณผ ๊ทธ ์ดํ›„์—๋Š” ๋” ๋งŽ์€ ์„ฑ๊ณผ๋ฅผ ๊ฑฐ๋‘๊ฒŒ ๋  ๊ฒƒ์œผ๋กœ ์˜ˆ์ƒ๋ฉ๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : habr.com

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