Habr์˜ ๋งž์ถคํ˜• ๊ธฐ์‚ฌ ์„ ํƒ์„ ์œ„ํ•œ ํ…”๋ ˆ๊ทธ๋žจ ๋ด‡

โ€œ์™œ?โ€์™€ ๊ฐ™์€ ์งˆ๋ฌธ์˜ ๊ฒฝ์šฐ ์˜ค๋ž˜๋œ ๊ธฐ์‚ฌ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค - Natural Geektimes - ๊ณต๊ฐ„์„ ๋”์šฑ ๊นจ๋—ํ•˜๊ฒŒ ๋งŒ๋“ค๊ธฐ.

๊ธฐ์‚ฌ๊ฐ€ ๋„ˆ๋ฌด ๋งŽ์•„์„œ ์ฃผ๊ด€์ ์ธ ์ด์œ ๋กœ ๋งˆ์Œ์— ๋“ค์ง€ ์•Š๋Š” ๊ธฐ์‚ฌ๋„ ์žˆ๊ณ , ๋ฐ˜๋Œ€๋กœ ๊ฑด๋„ˆ ๋›ฐ๋Š” ๊ฒƒ์ด ์•ˆํƒ€๊น์Šต๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์„ธ์Šค๋ฅผ ์ตœ์ ํ™”ํ•˜๊ณ  ์‹œ๊ฐ„์„ ์ ˆ์•ฝํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

์œ„์˜ ๊ธฐ์‚ฌ์—์„œ๋Š” ๋ธŒ๋ผ์šฐ์ € ๋‚ด ์Šคํฌ๋ฆฝํŒ… ์ ‘๊ทผ ๋ฐฉ์‹์„ ์ œ์•ˆํ–ˆ์ง€๋งŒ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ด์œ ๋กœ ๋ณ„๋กœ ๋งˆ์Œ์— ๋“ค์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค(์ด์ „์— ์‚ฌ์šฉํ•ด ๋ณธ ์ ์ด ์žˆ์Œ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ ).

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

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

์ฒ˜์Œ์—๋Š” ํฅ๋ฏธ๋กœ์šด ๋‚ด์šฉ๋งŒ ๋‚จ๊ธฐ๊ณ  RSS ํ”ผ๋“œ(๋˜๋Š” ์—ฌ๋Ÿฌ ๊ฐœ)๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ฒฐ๊ตญ RSS๋ฅผ ์ฝ๋Š” ๊ฒƒ์ด ๊ทธ๋ฆฌ ํŽธ๋ฆฌํ•ด ๋ณด์ด์ง€๋Š” ์•Š๋Š” ๊ฒƒ์œผ๋กœ ๋‚˜ํƒ€๋‚ฌ์Šต๋‹ˆ๋‹ค. ์–ด๋–ค ๊ฒฝ์šฐ์—๋„ ๊ธฐ์‚ฌ์— ๋Œ“๊ธ€์„ ๋‹ฌ๊ฑฐ๋‚˜ ํˆฌํ‘œํ•˜๊ฑฐ๋‚˜ ์ฆ๊ฒจ์ฐพ๊ธฐ์— ์ถ”๊ฐ€ํ•˜๋ ค๋ฉด ๋ธŒ๋ผ์šฐ์ €๋ฅผ ๊ฑฐ์ณ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ํฅ๋ฏธ๋กœ์šด ๊ธฐ์‚ฌ๋ฅผ ๊ฐœ์ธ ๋ฉ”์‹œ์ง€๋กœ ๋ณด๋‚ด๋Š” ํ…”๋ ˆ๊ทธ๋žจ ๋ด‡์„ ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค. Telegram ์ž์ฒด๋Š” ์ž‘์„ฑ์ž/ํ‰์ /๋ทฐ์— ๋Œ€ํ•œ ์ •๋ณด์™€ ๊ฒฐํ•ฉ๋œ ์•„๋ฆ„๋‹ค์šด ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋ฅผ ๋งŒ๋“ค์–ด ๋งค์šฐ ์œ ์ตํ•ด ๋ณด์ž…๋‹ˆ๋‹ค.

Habr์˜ ๋งž์ถคํ˜• ๊ธฐ์‚ฌ ์„ ํƒ์„ ์œ„ํ•œ ํ…”๋ ˆ๊ทธ๋žจ ๋ด‡

์ปท ์•„๋ž˜์—๋Š” ์ž‘ํ’ˆ์˜ ํŠน์ง•, ์ง‘ํ•„ ๊ณผ์ •, ๊ธฐ์ˆ ์  ์†”๋ฃจ์…˜ ๋“ฑ์˜ ์„ธ๋ถ€ ์ •๋ณด๊ฐ€ ๋‚˜์™€ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ด‡์— ๋Œ€ํ•ด ๊ฐ„๋žตํžˆ ์„ค๋ช…ํ•˜์ž๋ฉด

์ €์žฅ์†Œ: https://github.com/Kright/habrahabr_reader

ํ…”๋ ˆ๊ทธ๋žจ์˜ ๋ด‡: https://t.me/HabraFilterBot

์‚ฌ์šฉ์ž๋Š” ํƒœ๊ทธ์™€ ์ž‘์„ฑ์ž์— ๋Œ€ํ•œ ์ถ”๊ฐ€ ๋“ฑ๊ธ‰์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ ํ›„ ๊ธฐ์‚ฌ์— ํ•„ํ„ฐ๊ฐ€ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค. Habrรฉ์— ๋Œ€ํ•œ ๊ธฐ์‚ฌ ํ‰์ , ์ž‘์„ฑ์ž์˜ ์‚ฌ์šฉ์ž ํ‰์  ๋ฐ ํƒœ๊ทธ๋ณ„ ์‚ฌ์šฉ์ž ํ‰์  ํ‰๊ท ์ด ํ•ฉ์‚ฐ๋ฉ๋‹ˆ๋‹ค. ๊ธˆ์•ก์ด ์‚ฌ์šฉ์ž๊ฐ€ ์ง€์ •ํ•œ ์ž„๊ณ„๊ฐ’๋ณด๋‹ค ํฌ๋ฉด ๊ธฐ์‚ฌ๊ฐ€ ํ•„ํ„ฐ๋ฅผ ํ†ต๊ณผํ•ฉ๋‹ˆ๋‹ค.

๋ด‡ ์ž‘์„ฑ์˜ ๋ถ€์ฐจ์ ์ธ ๋ชฉํ‘œ๋Š” ์žฌ๋ฏธ์™€ ๊ฒฝํ—˜์„ ์–ป๋Š” ๊ฒƒ์ด์—ˆ์Šต๋‹ˆ๋‹ค. ๊ฒŒ๋‹ค๊ฐ€ ๋‚˜๋Š” ์ •๊ธฐ์ ์œผ๋กœ ๋‚˜ ์ž์‹ ์—๊ฒŒ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์‚ฌ์‹ค์„ ์ƒ๊ธฐ์‹œ์ผฐ๋‹ค. ๋‚˜๋Š” ๊ตฌ๊ธ€์ด ์•„๋‹ˆ๋‹ค๋”ฐ๋ผ์„œ ๋งŽ์€ ์ผ์ด ๊ฐ€๋Šฅํ•œ ํ•œ ๊ฐ„๋‹จํ•˜๊ณ  ์›์‹œ์ ์œผ๋กœ ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ด๋กœ ์ธํ•ด ๋ด‡์„ ์ž‘์„ฑํ•˜๋Š” ๊ณผ์ •์ด XNUMX๊ฐœ์›”์ด ๊ฑธ๋ฆฌ๋Š” ๊ฒƒ์„ ๋ง‰์ง€๋Š” ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.

๋ฐ–์€ ์—ฌ๋ฆ„์ด์—ˆ์–ด

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

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

๋ฌด์—‡์ด ๊ฐ”์„๊นŒ? ๊ทธ๋ž˜์„œ? ๊ทธ๋Ÿฌ๋‚˜ ์„œ๋‘๋ฅด์ง€ ๋ง์ž.
๋ฐœ์ƒํ•˜๋Š” ๋ชจ๋“  ์ผ์€ ์ปค๋ฐ‹ ๊ธฐ๋ก์„ ์‚ฌ์šฉํ•˜์—ฌ ์ถ”์ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ง€์ธ์ด 27์›” XNUMX์ผ์— ์ €์žฅ์†Œ๋ฅผ ๋งŒ๋“ค์—ˆ์ง€๋งŒ ๋ณ„๋‹ค๋ฅธ ์กฐ์น˜๋ฅผ ์ทจํ•˜์ง€ ์•Š์•„์„œ ์ฝ”๋“œ ์ž‘์„ฑ์„ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค.

7์›” 30

๊ฐ„๋‹จํžˆ ๋งํ•ด์„œ: ๋‚˜๋Š” Habr์˜ RSS ํ”ผ๋“œ๋ฅผ ๋ถ„์„ํ•˜์—ฌ ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค.

  • com.github.pureconfig ์œ ํ˜•์ด ์•ˆ์ „ํ•œ ๊ตฌ์„ฑ์„ ์ผ€์ด์Šค ํด๋ž˜์Šค๋กœ ์ง์ ‘ ์ฝ๊ธฐ ์œ„ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค(๋งค์šฐ ํŽธ๋ฆฌํ•œ ๊ฒƒ์œผ๋กœ ๋‚˜ํƒ€๋‚ฌ์Šต๋‹ˆ๋‹ค).
  • scala-xml xml ์ฝ๊ธฐ: ์ฒ˜์Œ์—๋Š” RSS ํ”ผ๋“œ์— ๋Œ€ํ•œ ์ž์ฒด ๊ตฌํ˜„์„ ์ž‘์„ฑํ•˜๊ณ  ์‹ถ์—ˆ๊ณ  RSS ํ”ผ๋“œ๋Š” xml ํ˜•์‹์ด๋ฏ€๋กœ ๊ตฌ๋ฌธ ๋ถ„์„์— ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค. ์‹ค์ œ๋กœ RSS ํŒŒ์‹ฑ๋„ ๋“ฑ์žฅํ–ˆ๋‹ค.
  • scalatest ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•ด. ์ž‘์€ ํ”„๋กœ์ ํŠธ์˜ ๊ฒฝ์šฐ์—๋„ ํ…Œ์ŠคํŠธ๋ฅผ ์ž‘์„ฑํ•˜๋ฉด ์‹œ๊ฐ„์ด ์ ˆ์•ฝ๋ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด XML ๊ตฌ๋ฌธ ๋ถ„์„์„ ๋””๋ฒ„๊น…ํ•  ๋•Œ ํŒŒ์ผ๋กœ ๋‹ค์šด๋กœ๋“œํ•˜๊ณ  ํ…Œ์ŠคํŠธ๋ฅผ ์ž‘์„ฑํ•˜๊ณ  ์˜ค๋ฅ˜๋ฅผ ์ˆ˜์ •ํ•˜๋Š” ๊ฒƒ์ด ํ›จ์”ฌ ์‰ฝ์Šต๋‹ˆ๋‹ค. ๋‚˜์ค‘์— ์ž˜๋ชป๋œ utf-8 ๋ฌธ์ž๊ฐ€ ํฌํ•จ๋œ ์ด์ƒํ•œ HTML์„ ๊ตฌ๋ฌธ ๋ถ„์„ํ•  ๋•Œ ๋ฒ„๊ทธ๊ฐ€ ๋‚˜ํƒ€๋‚ฌ์„ ๋•Œ ์ด๋ฅผ ํŒŒ์ผ์— ๋„ฃ๊ณ  ํ…Œ์ŠคํŠธ๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์ด ๋” ํŽธ๋ฆฌํ•œ ๊ฒƒ์œผ๋กœ ๋‚˜ํƒ€๋‚ฌ์Šต๋‹ˆ๋‹ค.
  • ์•„์นด ์ถœ์‹  ๋ฐฐ์šฐ๋“ค. ๊ฐ๊ด€์ ์œผ๋กœ ์ „ํ˜€ ํ•„์š”ํ•˜์ง€ ์•Š์•˜์ง€๋งŒ ํ”„๋กœ์ ํŠธ๋Š” ์žฌ๋ฏธ๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฏ€๋กœ ์‹œ๋„ํ•ด๋ณด๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ์ ์œผ๋กœ ๋งˆ์Œ์— ๋“ค์—ˆ๋‹ค๊ณ  ๋งํ•  ์ค€๋น„๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. OOP์˜ ์•„์ด๋””์–ด๋Š” ๋‹ค๋ฅธ ์ธก๋ฉด์—์„œ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฉ”์‹œ์ง€๋ฅผ ๊ตํ™˜ํ•˜๋Š” ๋ฐฐ์šฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋” ํฅ๋ฏธ๋กœ์šด ์ ์€ ๋ฉ”์‹œ์ง€๊ฐ€ ๋„์ฐฉํ•˜์ง€ ์•Š๊ฑฐ๋‚˜ ์ฒ˜๋ฆฌ๋˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ๋Š” ๋ฐฉ์‹์œผ๋กœ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๊ณ  ์ž‘์„ฑํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค(์ผ๋ฐ˜์ ์œผ๋กœ ๊ณ„์ •์ด ๋‹จ์ผ ์ปดํ“จํ„ฐ์—์„œ ์‹คํ–‰๋  ๋•Œ ๋ฉ”์‹œ์ง€๊ฐ€ ์†์‹ค๋˜์–ด์„œ๋Š” ์•ˆ ๋ฉ๋‹ˆ๋‹ค). ์ฒ˜์Œ์—๋Š” ๋จธ๋ฆฌ๋ฅผ ๊ธ์ ์ด๋ฉฐ ๋ฐฐ์šฐ๋“ค์ด ์„œ๋กœ ๊ตฌ๋…ํ•˜๋Š” ์ฝ”๋“œ์— ์“ฐ๋ ˆ๊ธฐ๊ฐ€ ์žˆ์—ˆ์ง€๋งŒ ๊ฒฐ๊ตญ์—๋Š” ๋‹ค์†Œ ๋‹จ์ˆœํ•˜๊ณ  ์šฐ์•„ํ•œ ์•„ํ‚คํ…์ฒ˜๋ฅผ ์ƒ๊ฐํ•ด ๋ƒˆ์Šต๋‹ˆ๋‹ค. ๊ฐ ์•กํ„ฐ ๋‚ด๋ถ€์˜ ์ฝ”๋“œ๋Š” ๋‹จ์ผ ์Šค๋ ˆ๋“œ๋กœ ๊ฐ„์ฃผ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์•กํ„ฐ๊ฐ€ ์ถฉ๋Œํ•˜๋ฉด Acca๊ฐ€ ์ด๋ฅผ ๋‹ค์‹œ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ์ ์œผ๋กœ ์ƒ๋‹นํžˆ ๋‚ด๊ฒฐํ•จ์„ฑ์ด ์žˆ๋Š” ์‹œ์Šคํ…œ์ด ๋ฉ๋‹ˆ๋‹ค.

9 8์›”

ํ”„๋กœ์ ํŠธ์— ์ถ”๊ฐ€ํ–ˆ์–ด์š” scala-scrapper Habr์—์„œ html ํŽ˜์ด์ง€๋ฅผ ๊ตฌ๋ฌธ ๋ถ„์„ํ•˜๊ธฐ ์œ„ํ•ด(๊ธฐ์‚ฌ ๋“ฑ๊ธ‰, ๋ถ๋งˆํฌ ์ˆ˜ ๋“ฑ๊ณผ ๊ฐ™์€ ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์˜ค๊ธฐ ์œ„ํ•ด)

๊ทธ๋ฆฌ๊ณ  ๊ณ ์–‘์ด. ๋ฐ”์œ„์— ์žˆ๋Š” ๊ฒƒ๋“ค.

Habr์˜ ๋งž์ถคํ˜• ๊ธฐ์‚ฌ ์„ ํƒ์„ ์œ„ํ•œ ํ…”๋ ˆ๊ทธ๋žจ ๋ด‡

๊ทธ๋Ÿฌ๋‹ค๊ฐ€ ๋ถ„์‚ฐ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๊ด€ํ•œ ์ฑ…์„ ์ฝ์—ˆ๋Š”๋ฐ, CRDT(์ถฉ๋Œ ์—†๋Š” ๋ณต์ œ ๋ฐ์ดํ„ฐ ์œ ํ˜•, https://en.wikipedia.org/wiki/Conflict-free_replicated_data_type, ํ•˜๋ธŒ๋ฅด), ๊ทธ๋ž˜์„œ Habrรฉ์— ๊ด€ํ•œ ๊ธฐ์‚ฌ์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์œ„ํ•ด ๊ตํ™˜ํ˜• ์„ธ๋ฏธ๊ทธ๋ฃน์˜ ์œ ํ˜• ํด๋ž˜์Šค๋ฅผ ๊ฒŒ์‹œํ–ˆ์Šต๋‹ˆ๋‹ค.

์‚ฌ์‹ค ์•„์ด๋””์–ด๋Š” ๋งค์šฐ ๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค. ๋‹จ์กฐ๋กญ๊ฒŒ ๋ณ€ํ•˜๋Š” ์นด์šดํ„ฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ํ”„๋กœ๋ชจ์…˜ ์ˆ˜๋Š” ํ”Œ๋Ÿฌ์Šค ์ˆ˜์™€ ๋งˆ์ด๋„ˆ์Šค ์ˆ˜์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์ ์ฐจ ์ฆ๊ฐ€ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ์‚ฌ์— ๋Œ€ํ•œ ๋‘ ๊ฐ€์ง€ ๋ฒ„์ „์˜ ์ •๋ณด๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ "ํ•˜๋‚˜๋กœ ๋ณ‘ํ•ฉ"ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์นด์šดํ„ฐ์˜ ์ƒํƒœ๊ฐ€ ํด์ˆ˜๋ก ๊ด€๋ จ์„ฑ์ด ๋” ๋†’์€ ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผ๋ฉ๋‹ˆ๋‹ค.

์„ธ๋ฏธ๊ทธ๋ฃน์€ ๊ธฐ์‚ฌ์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ํฌํ•จ๋œ ๋‘ ๊ฐœ์ฒด๋ฅผ ํ•˜๋‚˜๋กœ ๋ณ‘ํ•ฉํ•  ์ˆ˜ ์žˆ์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ๊ตํ™˜ ๊ฐ€๋Šฅ์ด๋ž€ A + B์™€ B + A๋ฅผ ๋ชจ๋‘ ๋ณ‘ํ•ฉํ•  ์ˆ˜ ์žˆ๊ณ  ๊ฒฐ๊ณผ๊ฐ€ ์ˆœ์„œ์— ์˜ํ–ฅ์„ ๋ฐ›์ง€ ์•Š์œผ๋ฉฐ ๊ฒฐ๊ตญ ์ตœ์‹  ๋ฒ„์ „์ด ์œ ์ง€๋œ๋‹ค๋Š” ์˜๋ฏธ์ž…๋‹ˆ๋‹ค. ๊ทธ๊ฑด ๊ทธ๋ ‡๊ณ , ์—ฌ๊ธฐ์—๋„ ์—ฐ๊ด€์„ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

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

์ผ๋ฐ˜์ ์œผ๋กœ ๋งํ•˜๋ฉด akka์—์„œ๋Š” ์ด๊ฒƒ์ด ํ•„์š”ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๋‹จ์ˆœํžˆ ๊ธฐ์‚ฌ์˜ updateDate๋ฅผ ์ €์žฅํ•˜๊ณ  ๋ณ‘ํ•ฉํ•˜์ง€ ์•Š๊ณ  ์ƒˆ๋กœ์šด ๊ธฐ์‚ฌ๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์—ˆ์ง€๋งŒ ๋ชจํ—˜์˜ ๊ธธ์ด ์ €๋ฅผ ์ด๋Œ์—ˆ์Šต๋‹ˆ๋‹ค.

12 8์›”

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

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

์ผ๋ฐ˜์ ์œผ๋กœ ๋ด‡์€ ์ด๋ฏธ ์ž‘๋™ํ•˜๊ณ  ์žˆ๊ณ , ๋ฉ”์‹œ์ง€์— ์‘๋‹ตํ•˜๊ณ , ์‚ฌ์šฉ์ž์—๊ฒŒ ์ „์†ก๋œ ๊ธฐ์‚ฌ ๋ชฉ๋ก์„ ์ €์žฅํ•˜๊ณ  ์žˆ์—ˆ๊ณ , ์ €๋Š” ์ด๋ฏธ ๋ด‡์ด ๊ฑฐ์˜ ์ค€๋น„๋˜์—ˆ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๊ณ  ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ €์ž ์ด๋ฆ„๊ณผ ํƒœ๊ทธ ์ •๊ทœํ™”("sd f"๋ฅผ "s_d_f"๋กœ ๋Œ€์ฒด)์™€ ๊ฐ™์€ ์ž‘์€ ๊ธฐ๋Šฅ์„ ์ฒœ์ฒœํžˆ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋‚จ์€ ๊ฑด ๋”ฑ ํ•˜๋‚˜๋ฟ์ด์—ˆ์–ด ์ž‘์ง€๋งŒ โ€” ์ƒํƒœ๋Š” ์–ด๋””์—๋„ ์ €์žฅ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  ๊ฒƒ์ด ์ž˜๋ชป๋˜์—ˆ๋‹ค

์ œ๊ฐ€ ๋ด‡์„ ์ฃผ๋กœ ํ˜ผ์ž ์ž‘์„ฑํ–ˆ๋‹ค๋Š” ์‚ฌ์‹ค์„ ๋ˆˆ์น˜์ฑ„์…จ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋‘ ๋ฒˆ์งธ ์ฐธ๊ฐ€์ž๊ฐ€ ๊ฐœ๋ฐœ์— ์ฐธ์—ฌํ–ˆ๊ณ  ์ฝ”๋“œ์— ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ๋‚˜ํƒ€๋‚ฌ์Šต๋‹ˆ๋‹ค.

  • MongoDB๋Š” ์ƒํƒœ๋ฅผ ์ €์žฅํ•˜๋Š” ๊ฒƒ์œผ๋กœ ๋‚˜ํƒ€๋‚ฌ์Šต๋‹ˆ๋‹ค. ๋™์‹œ์— ํ”„๋กœ์ ํŠธ์˜ ๋กœ๊ทธ๊ฐ€ ์†์ƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์–ด๋–ค ์ด์œ ๋กœ Monga๊ฐ€ ๋กœ๊ทธ์— ์ŠคํŒธ์„ ๋ณด๋‚ด๊ธฐ ์‹œ์ž‘ํ–ˆ๊ณ  ์ผ๋ถ€ ์‚ฌ๋žŒ๋“ค์€ ๋‹จ์ˆœํžˆ ๋กœ๊ทธ๋ฅผ ์ „์—ญ์ ์œผ๋กœ ๊บผ๋ฒ„๋ ธ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.
  • ํ…”๋ ˆ๊ทธ๋žจ์˜ ๋ธŒ๋ฆฟ์ง€ ์•กํ„ฐ๋Š” ์•Œ์•„๋ณผ ์ˆ˜ ์—†์„ ์ •๋„๋กœ ๋ณ€ํ˜•๋˜์–ด ์Šค์Šค๋กœ ๋ฉ”์‹œ์ง€๋ฅผ ๋ถ„์„ํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ์ฑ„ํŒ…์„ ์œ„ํ•œ ๋ฐฐ์šฐ๋“ค์„ ๊ฐ€์ฐจ ์—†์ด ์ž˜๋ผ๋‚ด๊ณ , ๋Œ€์‹  ๋ชจ๋“  ์ฑ„ํŒ…์— ๋Œ€ํ•œ ๋ชจ๋“  ์ •๋ณด๋ฅผ ํ•œ๊บผ๋ฒˆ์— ์ˆจ๊ธฐ๋Š” ๋ฐฐ์šฐ๋กœ ๊ต์ฒดํ–ˆ์Šต๋‹ˆ๋‹ค. ์žฌ์ฑ„๊ธฐํ•  ๋•Œ๋งˆ๋‹ค ์ด ๋ฐฐ์šฐ๋Š” ๊ณค๊ฒฝ์— ์ฒ˜ํ–ˆ๋‹ค. ์˜ˆ, ์˜ˆ, ๊ธฐ์‚ฌ์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์—…๋ฐ์ดํŠธํ•  ๋•Œ ์ด๋ฅผ ๋ชจ๋“  ์ฑ„ํŒ… ์ฐธ์—ฌ์ž์—๊ฒŒ ๋ณด๋‚ด๋Š” ๊ฒƒ์€ ์–ด๋ ต์ง€๋งŒ(์šฐ๋ฆฌ๋Š” Google๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์ˆ˜๋ฐฑ๋งŒ ๋ช…์˜ ์‚ฌ์šฉ์ž๊ฐ€ ๊ฐ๊ฐ ์ฑ„ํŒ…์—์„œ ๋ฐฑ๋งŒ ๊ฐœ์˜ ๊ธฐ์‚ฌ๋ฅผ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค) ์ฑ„ํŒ…์ด ์—…๋ฐ์ดํŠธ๋  ๋•Œ๋งˆ๋‹ค Monga์— ๋“ค์–ด๊ฐ€๋Š” ๊ฒƒ์€ ์ •์ƒ์ž…๋‹ˆ๋‹ค. ํ•œ์ฐธ ํ›„์—์•ผ ๊นจ๋‹ฌ์•˜์ง€๋งŒ, ์ฑ„ํŒ…์˜ ์ž‘๋™ ๋…ผ๋ฆฌ๋„ ์™„์ „ํžˆ ๋Š์–ด์กŒ๊ณ  ๊ทธ ์ž๋ฆฌ์— ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด ๋‚˜ํƒ€๋‚ฌ์Šต๋‹ˆ๋‹ค.
  • ์œ ํ˜• ํด๋ž˜์Šค์—๋Š” ํ”์ ์ด ๋‚จ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • ์„œ๋กœ ๊ตฌ๋…ํ•˜๋Š” ๋ฐฐ์šฐ๋“ค์—๊ฒŒ ๊ฑด๊ฐ•์— ํ•ด๋กœ์šด ๋…ผ๋ฆฌ๊ฐ€ ๋‚˜ํƒ€๋‚˜ ๊ฒฝ์Ÿ ์กฐ๊ฑด์ด ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ์œ ํ˜•์˜ ํ•„๋“œ๊ฐ€ ์žˆ๋Š” ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ Option[Int] -1๊ณผ ๊ฐ™์€ ๋งˆ๋ฒ•์˜ ๊ธฐ๋ณธ๊ฐ’์„ ์‚ฌ์šฉํ•˜์—ฌ Int๋กœ ๋ณ€ํ™˜๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋‚˜์ค‘์— ๋‚˜๋Š” mongoDB๊ฐ€ json์„ ์ €์žฅํ•˜๊ณ  ๊ฑฐ๊ธฐ์— ์ €์žฅํ•˜๋Š” ๋ฐ ์•„๋ฌด๋Ÿฐ ๋ฌธ์ œ๊ฐ€ ์—†๋‹ค๋Š” ๊ฒƒ์„ ๊นจ๋‹ฌ์•˜์Šต๋‹ˆ๋‹ค. Option ๊ธ€์Ž„, ์•„๋‹ˆ๋ฉด ์ ์–ด๋„ -1์„ ์—†์Œ์œผ๋กœ ๊ตฌ๋ฌธ ๋ถ„์„ํ–ˆ์ง€๋งŒ ๊ทธ ๋‹น์‹œ ๋‚˜๋Š” ์ด๊ฒƒ์„ ๋ชฐ๋ž๊ณ  "๊ทธ๋ ‡๊ฒŒ ๋˜์–ด์•ผ ํ•œ๋‹ค"๊ณ  ๋‚ด ๋ง์„ ๋ฐ›์•„๋“ค์˜€์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜์ง€ ์•Š์•˜๊ณ  ๋‹น๋ถ„๊ฐ„ ์ฝ”๋“œ๋ฅผ ๋ณ€๊ฒฝํ•˜์ง€๋„ ์•Š์•˜์Šต๋‹ˆ๋‹ค.
  • ๋‚˜๋Š” ๋‚ด ๊ณต์šฉ IP ์ฃผ์†Œ๊ฐ€ ๋ณ€๊ฒฝ๋˜๋Š” ๊ฒฝํ–ฅ์ด ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ์•˜๊ณ , ๋งค๋ฒˆ ์ด๋ฅผ Mongo์˜ ํ™”์ดํŠธ๋ฆฌ์ŠคํŠธ์— ์ถ”๊ฐ€ํ•ด์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋กœ์ปฌ์—์„œ ๋ด‡์„ ์‹œ์ž‘ํ–ˆ๋Š”๋ฐ Monga๋Š” ํšŒ์‚ฌ๋กœ์„œ Monga ์„œ๋ฒ„ ์–ด๋”˜๊ฐ€์— ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.
  • ๊ฐ‘์ž๊ธฐ ํ…”๋ ˆ๊ทธ๋žจ์˜ ํƒœ๊ทธ ๋ฐ ๋ฉ”์‹œ์ง€ ํ˜•์‹ ์ •๊ทœํ™”๊ฐ€ ์‚ฌ๋ผ์กŒ์Šต๋‹ˆ๋‹ค. (ํ , ์™œ ๊ทธ๋Ÿด๊นŒ์š”?)
  • ๋ด‡์˜ ์ƒํƒœ๊ฐ€ ์™ธ๋ถ€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ €์žฅ๋˜์–ด ์žˆ๊ณ  ๋‹ค์‹œ ์‹œ์ž‘ํ•ด๋„ ์•„๋ฌด ์ผ๋„ ์—†์—ˆ๋˜ ๊ฒƒ์ฒ˜๋Ÿผ ๊ณ„์† ์ž‘๋™ํ•œ๋‹ค๋Š” ์ ์ด ๋งˆ์Œ์— ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ด๊ฒƒ์ด ์œ ์ผํ•œ ์žฅ์ ์ด์—ˆ์Šต๋‹ˆ๋‹ค.

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

9์›”

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

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

๋‘ ๋ฒˆ์งธ ์ฐธ๊ฐ€์ž๋Š” ๋ด‡์ด Habr๋กœ๋ถ€ํ„ฐ ๊ธฐ์‚ฌ๋ฅผ ์ˆ˜์‹ ํ•  ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์ „๋ณด๋กœ๋„ ์ „์†ก๋  ๋•Œ ์ถ”์ƒํ™”๋ฅผ ํ–ฅํ•ด ์–ด๋”˜๊ฐ€๋กœ ๋Œ๋ ค๊ฐ”์Šต๋‹ˆ๋‹ค.

์–ด๋–ป๊ฒŒ๋“  XNUMX์›” ํ•˜๋ฐ˜๊ธฐ๋ฅผ ๋งž์•„ ๋ณ„๋„์˜ ๊ฐ„ํŒ ํ˜•ํƒœ๋กœ ์ด๋ฒคํŠธ๋ฅผ ๊ตฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ตœ์ ์€ ์•„๋‹ˆ์ง€๋งŒ ์ ์–ด๋„ ๋ด‡์ด ์ž‘๋™ํ•˜๊ธฐ ์‹œ์ž‘ํ•˜๊ณ  ๋‹ค์‹œ ๊ธฐ์‚ฌ๋ฅผ ๋ณด๋‚ด๊ธฐ ์‹œ์ž‘ํ–ˆ๊ณ  ์ฝ”๋“œ์—์„œ ๋ฌด์Šจ ์ผ์ด ์ผ์–ด๋‚˜๊ณ  ์žˆ๋Š”์ง€ ์ฒœ์ฒœํžˆ ์•Œ์•„๋ƒˆ์Šต๋‹ˆ๋‹ค.

์ด์ œ ์ฒ˜์Œ์œผ๋กœ ๋Œ์•„๊ฐ€์„œ ์ €์žฅ์†Œ๊ฐ€ ์›๋ž˜ ๋‚ด๊ฐ€ ๋งŒ๋“  ๊ฒƒ์ด ์•„๋‹ˆ๋ผ๋Š” ๊ฒƒ์„ ๊ธฐ์–ตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌด์—‡์ด ์ด๋ ‡๊ฒŒ ๋  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๊นŒ? ๋‚ด ํ’€ ์š”์ฒญ์ด ๊ฑฐ๋ถ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์•Œ๊ณ  ๋ณด๋‹ˆ ์ œ๊ฒŒ๋Š” ํŒ€์—์„œ ์ผํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ชฐ๋ž๊ณ , ํ˜„์žฌ ๊ตฌํ˜„ ๊ณก์„ ์˜ ๋ฒ„๊ทธ๋ฅผ ์ˆ˜์ •ํ•ด์•ผ ํ–ˆ๊ณ  ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ƒํƒœ๋กœ ๊ฐœ์„ ํ•˜์ง€ ๋ชปํ•œ ์ƒํƒœ์˜ ์ฝ”๋“œ๊ฐ€ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ํ™”๊ฐ€ ๋‚˜์„œ ์ปค๋ฐ‹ ์ด๋ ฅ๊ณผ ์ž‘์„ฑ๋œ ์ฝ”๋“œ์˜ ์–‘์„ ์‚ดํŽด๋ณด์•˜์Šต๋‹ˆ๋‹ค. ์›๋ž˜ ์ž˜ ์“ฐ์—ฌ์กŒ๋˜ ์ˆœ๊ฐ„๋“ค์„ ๋ดค๋Š”๋ฐ, ๊ทธ๋Ÿฌ๋‹ค๊ฐ€ ๊นจ์ ธ์„œ...

๋นŒ์–ด๋จน์„

๊ธฐ์‚ฌ๊ฐ€ ์ƒ๊ฐ๋‚ฌ์–ด์š” ๋‹น์‹ ์€ ๊ตฌ๊ธ€์ด ์•„๋‹ˆ๋‹ค.

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

์ฝ”๋“œ๊ฐ€ ๋‹จ์ˆœํžˆ ์ž‘๋™ํ•˜์ง€ ์•Š๊ฑฐ๋‚˜ ๋น„๋šค์–ด์ง€๊ฒŒ ์ž‘๋™ํ•˜๋Š” ๊ฒฝ์šฐ Docker, mongoDB ๋ฐ ๊ธฐํƒ€ "์‹ฌ๊ฐํ•œ" ์†Œํ”„ํŠธ์›จ์–ด์˜ ํ™”๋ฌผ ์ปฌํŠธ๊ฐ€ ํ•„์š”ํ•œ ์ด์œ ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

๋‚˜๋Š” ํ”„๋กœ์ ํŠธ๋ฅผ ํฌํฌํ•˜๊ณ  ๋‚ด๊ฐ€ ์›ํ•˜๋Š” ๋Œ€๋กœ ๋ชจ๋“  ๊ฒƒ์„ ํ–ˆ์Šต๋‹ˆ๋‹ค.

Habr์˜ ๋งž์ถคํ˜• ๊ธฐ์‚ฌ ์„ ํƒ์„ ์œ„ํ•œ ํ…”๋ ˆ๊ทธ๋žจ ๋ด‡

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

๋งˆ์Œ ์† ์–ด๋”˜๊ฐ€์—๋Š” mongoDB๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ๋‹ค๋Š” ์˜๊ตฌ์‹ฌ์ด ์žˆ์—ˆ์ง€๋งŒ, "์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š”" ์ƒํƒœ ์ €์žฅ์†Œ์˜ ์žฅ์  ์™ธ์—๋„ ๋ˆˆ์— ๋„๋Š” ๋‹จ์ ์ด ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค.

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

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

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

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

์˜ˆ๋ฅผ ๋“ค์–ด, ํ•˜๋‚˜์˜ ๋ฉ”์‹œ์ง€์— ๋ชจ๋“  ์„ค์ •์„ ์ง์ ‘ ์ง€์ •ํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.

/subscribe
/rating +20
/author a -30
/author s -20
/author p +9000
/tag scala 20
/tag akka 50

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

๊ฐ„๋‹จํ•œ ์„ ํ˜• ๋ชจ๋ธ ํ˜•ํƒœ๋กœ ๊ธฐ์‚ฌ ํ•„ํ„ฐ๋ง์„ ๊ตฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๋Š” ์ž‘์„ฑ์ž ๋ฐ ํƒœ๊ทธ์— ๋Œ€ํ•œ ์ถ”๊ฐ€ ๋“ฑ๊ธ‰๊ณผ ์ž„๊ณ„๊ฐ’์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž‘์„ฑ์ž ํ‰์ , ํƒœ๊ทธ ํ‰๊ท  ํ‰์ , ๊ธฐ์‚ฌ ์‹ค์ œ ํ‰์ ์˜ ํ•ฉ์ด ์ž„๊ณ„๊ฐ’๋ณด๋‹ค ํฌ๋ฉด ๊ธฐ์‚ฌ๊ฐ€ ์‚ฌ์šฉ์ž์—๊ฒŒ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. /new ๋ช…๋ น์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ด‡์—๊ฒŒ ๊ธฐ์‚ฌ๋ฅผ ์š”์ฒญํ•˜๊ฑฐ๋‚˜ ๋ด‡์„ ๊ตฌ๋…ํ•˜๋ฉด ํ•˜๋ฃจ ์ค‘ ์–ธ์ œ๋“ ์ง€ ๊ฐœ์ธ ๋ฉ”์‹œ์ง€๋กœ ๊ธฐ์‚ฌ๋ฅผ ๋ณด๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

๊ฒŒ๋‹ค๊ฐ€ ์ž‘์—…์˜ ๋…ผ๋ฆฌ๋„ ๊ทธ๋ ‡๊ฒŒ ๋ช…ํ™•ํ•˜์ง€ ์•Š์„ ๊ฒƒ์ด๋‹ค. ์ด์ œ PatientZero์— ๋Œ€ํ•ด +9000์˜ ๋“ฑ๊ธ‰์„ ์ˆ˜๋™์œผ๋กœ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ +20์˜ ์ž„๊ณ„ ๋“ฑ๊ธ‰์„ ์‚ฌ์šฉํ•˜๋ฉด ๊ทธ์˜ ๋ชจ๋“  ๊ธฐ์‚ฌ๋ฅผ ๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(๋ฌผ๋ก  ์ผ๋ถ€ ํƒœ๊ทธ์— ๋Œ€ํ•ด -100500์„ ์„ค์ •ํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ).

์ตœ์ข… ์•„ํ‚คํ…์ฒ˜๋Š” ๋งค์šฐ ๊ฐ„๋‹จํ–ˆ์Šต๋‹ˆ๋‹ค.

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

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

์ฝ”๋“œ๊ฐ€ ๊นจ์ง€๋ฉด ์ฆ‰์‹œ ์•Œ ์ˆ˜ ์žˆ๋„๋ก Circle-ci๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ตœ์†Œํ•œ ์ด๋Š” ์ฝ”๋“œ ์ปดํŒŒ์ผ์ด ์ค‘์ง€๋˜์—ˆ์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์ฒ˜์Œ์—๋Š” ํŠธ๋ž˜๋น„์Šค๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ  ์‹ถ์—ˆ์ง€๋งŒ ํฌํฌ ์—†์ด ๋‚ด ํ”„๋กœ์ ํŠธ๋งŒ ํ‘œ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ์ด ๋‘ ๊ฐ€์ง€ ๋ชจ๋‘ ์˜คํ”ˆ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์—์„œ ์ž์œ ๋กญ๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฒฐ๊ณผ

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

๋ด‡ ๋งํฌ: https://t.me/HabraFilterBot
Github: https://github.com/Kright/habrahabr_reader

์ž‘์€ ๊ฒฐ๋ก :

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

์ถœ์ฒ˜ : habr.com

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