์ฑ„๋„ํ†ก ์•„์ด์ฝ˜

๊ฒฌ๊ณ ํ•œ ๊ฒฐ์ œ ์‹œ์Šคํ…œ ๊ตฌ์ถ•

์‹ค์šฉ์ ์ธ ๊ฒฐ์ œ ์‹œ์Šคํ…œ ๊ตฌ์ถ• ๊ฐ•์˜, ์ฝ”๋“œ๋กœ ๋ฐฐ์šฐ๋ฉฐ, ์‹ค์ œ ์‹œ์Šคํ…œ์„ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ์ง€์‹์„ ๋‹ค๋ฃน๋‹ˆ๋‹ค.

(4.1) ์ˆ˜๊ฐ•ํ‰ 31๊ฐœ

์ˆ˜๊ฐ•์ƒ 496๋ช…

๋‚œ์ด๋„ ์ดˆ๊ธ‰

์ˆ˜๊ฐ•๊ธฐํ•œ ๋ฌด์ œํ•œ

์‹ค์Šต ์ค‘์‹ฌ
์‹ค์Šต ์ค‘์‹ฌ
๊ฒฐ์ œ๊ธฐ๋Šฅ
๊ฒฐ์ œ๊ธฐ๋Šฅ
๊ฒฐ์ œ๊ธฐ๋Šฅ๊ตฌํ˜„
๊ฒฐ์ œ๊ธฐ๋Šฅ๊ตฌํ˜„
์‹ค์Šต ์ค‘์‹ฌ
์‹ค์Šต ์ค‘์‹ฌ
๊ฒฐ์ œ๊ธฐ๋Šฅ
๊ฒฐ์ œ๊ธฐ๋Šฅ
๊ฒฐ์ œ๊ธฐ๋Šฅ๊ตฌํ˜„
๊ฒฐ์ œ๊ธฐ๋Šฅ๊ตฌํ˜„
์‚ฌ๋žŒ์ธ
๋ผ์ธ ๊ฒŒ์ž„์ฆˆ
๊ฐ€๋น„์•„
๋‹ค์šฐ๊ธฐ์ˆ 
์นดํŽ˜24

์นดํŽ˜24

์ž„์ง์›๋“ค๋„ ์ด ๊ฐ•์˜๋ฅผ ๋“ฃ๊ณ  ์žˆ์–ด์š”!

์‚ฌ๋žŒ์ธ
๋ผ์ธ ๊ฒŒ์ž„์ฆˆ
๊ฐ€๋น„์•„
๋‹ค์šฐ๊ธฐ์ˆ 
์นดํŽ˜24

์นดํŽ˜24

์ž„์ง์›๋“ค๋„ ์ด ๊ฐ•์˜๋ฅผ ๋“ฃ๊ณ  ์žˆ์–ด์š”!

๋จผ์ € ๊ฒฝํ—˜ํ•œ ์ˆ˜๊ฐ•์ƒ๋“ค์˜ ํ›„๊ธฐ

4.1

5.0

๊ฐ•ํ”„๋กœ๊ทธ๋ž˜๋จธ

62% ์ˆ˜๊ฐ• ํ›„ ์ž‘์„ฑ

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

5.0

๋ฆฌ๋‚˜

90% ์ˆ˜๊ฐ• ํ›„ ์ž‘์„ฑ

๊ฒฌ๊ณ ํ•œ ๊ฒฐ์ œ ์„œ๋น„์Šค ํ†ตํ•ด ์ข‹์€ ์ง€์‹์„ ์–ป์„ ์ˆ˜ ์žˆ์–ด์„œ ๋„ˆ๋ฌด ์ข‹์•˜์–ด์š”! ๊ฐœ์ธ์ ์œผ๋กœ ๊ฒฐ์ œ ์„œ๋น„์Šค๋Š” ๋ฐ์ดํ„ฐ ์ผ๊ด€์„ฑ์ด ๊ต‰์žฅํžˆ ์ค‘์š”ํ•œ ๋ถ€๋ถ„์ธ๋ฐ ๋ˆ„๋ฝ ์•ˆ๋˜๋„๋ก ์—ฌ๋Ÿฌ ๊ธฐ์ˆ ๋“ค์„ ์Šต๋“ ํ•  ์ˆ˜ ์žˆ์–ด์„œ ๋„ˆ๋ฌด ์ข‹์•˜์Šต๋‹ˆ๋‹ค. ์•„์‰ฝ์ง€๋งŒ java ์–ธ์–ด๋กœ ํ•ด์ฃผ์—ˆ์œผ๋ฉด ์ข‹์„๊บผ ๊ฐ™๊ณ  '๊ฒฌ๊ณ ํ•œ ๊ฒฐ์ œ ์„œ๋น„์Šค' ์ค‘์ ์ธ๋ฐ spring webflux ๋Š” ๋„์ž… ํ•œ ๊ฒƒ์— ๋Œ€ํ•ด ํž˜๋“  ๋ถ€๋ถ„์ด ์žˆ์—ˆ์–ด์š”. spring webflux ๋ฅผ ๋ชจ๋ฅด๋Š” ํ•™์ƒ์€ ์ ‘๊ทผ ํ•˜๊ธฐ ์–ด๋ ต์ง€ ์•Š์•˜์„๊นŒ ์ƒ๊ฐ ํ•ฉ๋‹ˆ๋‹ค.

5.0

์ด์žฌํ˜

100% ์ˆ˜๊ฐ• ํ›„ ์ž‘์„ฑ

์กฐ๊ธˆ ๋นจ๋ผ์„œ ๋”ฐ๋ผ๊ฐ€๊ธฐ๋Š” ์–ด๋ ค์šด๋ฐ ์ข‹์€ ๊ฐ•์˜ ๊ฐ™์•„์š”.

์ˆ˜๊ฐ• ํ›„ ์ด๋Ÿฐ๊ฑธ ์–ป์„ ์ˆ˜ ์žˆ์–ด์š”

  • ์‹ ๋ขฐ์„ฑ์„ ๊ณ ๋ คํ•œ ๊ฒฐ์ œ ์‹œ์Šคํ…œ ์„ค๊ณ„

  • ๊ฒฐ์ œ ์‹œ์Šคํ…œ์˜ ๊ธฐ๋ณธ ์›๋ฆฌ์™€ ๊ตฌ์„ฑ์š”์†Œ

  • ํŠธ๋žœ์žญ์…˜ ์ฒ˜๋ฆฌ์™€ ๋™์‹œ์„ฑ ์ œ์–ด

  • ๊ฒฐ์ œ ํ”„๋กœ์„ธ์Šค์˜ ์ดํ•ด

๐Ÿ’ฒ "Talk is cheap. Show you the code."

์ด ๊ฐ•์˜๋Š” ์‹ค์šฉ์ ์ธ ์ ‘๊ทผ ๋ฐฉ์‹์„ ์ทจํ•˜๋ฉฐ, ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ•ต์‹ฌ ๊ฐœ๋…์„ ์‰ฝ๊ฒŒ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

  • ๊ฒฐ์ œ ์‹œ์Šคํ…œ ์„ค๊ณ„

  • ๊ฒฐ์ œ ์Šน์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ ๋ฐ ์—๋Ÿฌ ํ•ธ๋“ค๋ง

  • Apache Kafka๋ฅผ ํ™œ์šฉํ•œ ๊ฒฐ์ œ ๋ฉ”์‹œ์ง€ ์‹œ์Šคํ…œ์˜ ๊ตฌํ˜„

  • Optimistic Locking์„ ์ด์šฉํ•œ ๋™์‹œ์„ฑ ์ œ์–ด

  • Dead Letter Queue๋ฅผ ํ†ตํ•œ ์—๋Ÿฌ ๊ด€๋ฆฌ ๋ฐฉ๋ฒ•

  • Kafka ํŠธ๋žœ์žญ์…˜์„ ํ†ตํ•œ ๋ฉ”์‹œ์ง€ ์ฒ˜๋ฆฌ์™€ ์ „๋‹ฌ ๋ณด์žฅ

  • Transactional Outbox Pattern ์„ ์ด์šฉํ•œ ๊ฒฐ์ œ ์Šน์ธ ๋ฉ”์‹œ์ง€ ๋ฐœํ–‰

  • ์‹ ๋ขฐ์„ฑ ์žˆ๊ฒŒ ์นดํ”„์นด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•

  • Bulk Head Pattern ๊ณผ ๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ๋ฅผ ํ™œ์šฉํ•œ ๊ฒฐ์ œ ๋ณต๊ตฌ ์„œ๋น„์Šค

  • Double-Entry Ledger ๊ธฐ๋ฒ•์„ ์‚ฌ์šฉํ•œ Ledger Service ๊ตฌ์ถ•


์ด ๊ฐ•์˜๋Š” ๊ธฐ์ดˆ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์ง€์‹์ด ์žˆ๋Š” ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž๋“ค์„ ๋Œ€์ƒ์œผ๋กœ ํ•˜๋ฉฐ, ๊ฒฐ์ œ ์‹œ์Šคํ…œ์˜ ์ค‘์š” ๊ธฐ๋Šฅ์„ ์ฒ˜์Œ๋ถ€ํ„ฐ ๋๊นŒ์ง€ ์ดํ•ดํ•˜๊ณ  ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ๋Š” ์‹ค์งˆ์ ์ธ ๋Šฅ๋ ฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๊ฐ•์˜์˜ ๋ชฉํ‘œ๋Š” ์ด๋ก ์  ์ง€์‹์˜ ์ „๋‹ฌ์ด ์•„๋‹ˆ๋ผ, ์‹ค์ œ ์„ธ๊ณ„์˜ ๋ฌธ์ œ ํ•ด๊ฒฐ๊ณผ ํ”„๋กœ์ ํŠธ ์ ์šฉ ๋Šฅ๋ ฅ์˜ ํ–ฅ์ƒ์— ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ, ๊ฐ•์˜๋ฅผ ์ˆ˜๋ฃŒํ•œ ํ›„์—๋Š” ์ž์‹ ๋งŒ์˜ ๊ฒฐ์ œ ์‹œ์Šคํ…œ์„ ์„ค๊ณ„ํ•˜๊ณ , ๊ตฌํ˜„ํ•˜๋Š” ๊ฒƒ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ, ๊ธฐ์กด ์‹œ์Šคํ…œ์˜ ์‹ ๋ขฐ์„ฑ๊ณผ ์„ฑ๋Šฅ์„ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ๋Š” ์‹ค๋ ฅ์„ ๊ฐ–์ถ”๊ฒŒ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๐Ÿ’ก์‹ ๋ขฐ์„ฑ ์žˆ๋Š” ๊ฒฐ์ œ ์‹œ์Šคํ…œ ๊ธฐ์ดˆ๋ถ€ํ„ฐ ์‹ค์ „๊นŒ์ง€: ์™„๋ฒฝ ๊ฐ€์ด๋“œ

  • ๊ฒฐ์ œ ์‹œ์Šคํ…œ ์„ค๊ณ„์™€ ๊ตฌํ˜„์˜ ๊ธฐ์ดˆ๋ถ€ํ„ฐ ์‹ ๋ขฐ์„ฑ ์žˆ๋Š” ๋ฉ”์‹œ์ง€ ์ฒ˜๋ฆฌ ๊ธฐ์ˆ ๊นŒ์ง€ ๋ฐฐ์›๋‹ˆ๋‹ค.

  • Kafka, Wallet Service, ๋™์‹œ์„ฑ ์ œ์–ด ๋“ฑ ๊ฒฐ์ œ ์†”๋ฃจ์…˜์— ํ•„์ˆ˜์ ์ธ ์ „๋žต์„ ์‹ค์ „์— ์ ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ฐฐ์›Œ๋ณด์„ธ์š”.

๐Ÿ“š ์ด๋Ÿฐ ๋‚ด์šฉ์„ ๋ฐฐ์›Œ์š”

1. ๊ฒฐ์ œ ์‹œ์Šคํ…œ ์„ค๊ณ„

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

2. ๊ฒฐ์ œ ์Šน์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ ๋ฐ ์—๋Ÿฌ ํ•ธ๋“ค๋ง

Toss Payments ์—ฐ๋™์„ ํ†ตํ•œ ๊ฒฐ์ œ ์Šน์ธ ๊ธฐ๋Šฅ์˜ ๊ตฌํ˜„ ๊ณผ์ •์„ ์‹ค์Šตํ•ฉ๋‹ˆ๋‹ค. ํ•ด๋‹น ๊ฐ•์˜์—์„œ๋Š” ๊ฒฐ์ œ ๊ณผ์ •์—์„œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ์žฅ์• ๋ฅผ ๊ทน๋ณตํ•˜๊ธฐ ์œ„ํ•ด ์žฌ์‹œ๋„ ๋งค์ปค๋‹ˆ์ฆ˜์ธ Retry๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ฐฐ์šฐ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ, ๊ฒฐ์ œ ๊ณผ์ • ์ค‘ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ๋‹ค์–‘ํ•œ ์—๋Ÿฌ ์œ ํ˜•์„ ์‹๋ณ„ํ•˜๊ณ , ์ด๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ์—๋Ÿฌ ํ•ธ๋“ค๋ง ์ „๋žต์— ๋Œ€ํ•ด ๋‹ค๋ฃน๋‹ˆ๋‹ค.

3. ๊ฒฐ์ œ ๋ณต๊ตฌ ์„œ๋น„์Šค

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

4. ๊ฒฐ์ œ ์Šน์ธ ๋ฉ”์‹œ์ง€ ๋ฐœํ–‰

๊ฒฐ์ œ ์Šน์ธ ์„ฑ๊ณต ํ›„ Apache Kafka๋ฅผ ํ™œ์šฉํ•ด ์ด๋ฒคํŠธ ๋ฉ”์‹œ์ง€๋ฅผ ๋ฐœํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ค‘์ ์ ์œผ๋กœ ๋‹ค๋ฃน๋‹ˆ๋‹ค. ์ด ๊ฐ•์˜์—์„œ๋Š” ์ด๋ฒคํŠธ ๋ฉ”์‹œ์ง€๊ฐ€ ๋ฌด์กฐ๊ฑด์ ์œผ๋กœ ๋ฐœํ–‰๋  ์ˆ˜ ์žˆ๋„๋ก ๋ณด์žฅํ•˜๋Š” Transactional Outbox Pattern์˜ ์ ์šฉ ๋ฐฉ๋ฒ•์„ ํ•™์Šตํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์ด ๊ณผ์ •์„ ํ†ตํ•ด, ๊ฒฐ์ œ ์‹œ์Šคํ…œ๊ณผ ๋‹ค๋ฅธ ์‹œ์Šคํ…œ ๊ฐ„์˜ ์ผ๊ด€์„ฑ๊ณผ ์‹ ๋ขฐ์„ฑ ์žˆ๋Š” ๋ฐ์ดํ„ฐ ํ†ต์‹ ์„ ๊ตฌํ˜„ํ•˜๋Š” ์‹ค์งˆ์ ์ธ ๊ธฐ์ˆ ๊ณผ ์ „๋žต์„ ์Šต๋“ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

์ˆ˜๊ฐ• ์ „ ์ฐธ๊ณ  ์‚ฌํ•ญ

์‹ค์Šต ํ™˜๊ฒฝ

  • ์šด์˜ ์ฒด์ œ ๋ฐ ๋ฒ„์ „(OS): Windows, macOS, Linux ๋“ฑ ๋ชจ๋“  OS๊ฐ€ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

  • ์‚ฌ์šฉ ๋„๊ตฌ: Intellij, Datagrip, Kotlin, Docker, Toss App, Git, Confluent Kafka Cloud

  • PC ์‚ฌ์–‘: ์ธํ„ฐ๋„ท ์ ‘์†์ด ๊ฐ€๋Šฅํ•œ ๊ธฐ๋ณธ ์‚ฌ์–‘์˜ PC


ํ•™์Šต ์ž๋ฃŒ

  • ์ œ๊ณตํ•˜๋Š” ํ•™์Šต ์ž๋ฃŒ ํ˜•์‹: Notion

  • ๋ถ„๋Ÿ‰ ๋ฐ ์šฉ๋Ÿ‰: ๊ฐ ์„น์…˜๋ณ„๋กœ ํ•™์Šต ์ž๋ฃŒ ์ œ๊ณต

์„ ์ˆ˜ ์ง€์‹ ๋ฐ ์œ ์˜์‚ฌํ•ญ

  • ๋ณธ ๊ฐ•์˜๋Š” Alex Xu ์˜ Systems Design Interview: An Insiderโ€™s Guide: Volume 2 ์˜ Payment System ์„ค๊ณ„์˜ ์ด๋ก ์„ ๋ณด๋‹ค ์‘์šฉํ•˜๊ณ , ์‹ค์ œ ์‚ฌ๋ก€์— ์ ์šฉํ•˜์—ฌ ๋…์ฐฝ์ ์ธ ์ปค๋ฆฌํ˜๋Ÿผ์„ ๊ฐœ๋ฐœํ–ˆ์Šต๋‹ˆ๋‹ค.

  • Kotlin, Spring Webflux, Spring Data R2DBC, Spring Data JPA, MySQL ๊ทธ๋ฆฌ๊ณ  Apache Kafka ๋“ฑ์˜ ๊ธฐ์ˆ ์„ ํ™œ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ธฐ์ˆ ๋“ค์— ๋Œ€ํ•œ ์‚ฌ์ „ ์ง€์‹์ด ์—†์–ด๋„ ๊ฐ•์˜ ์ดํ•ด์— ๋ฌธ์ œ ์—†์Šต๋‹ˆ๋‹ค.


์ด๋Ÿฐ ๋ถ„๋“ค๊ป˜
์ถ”์ฒœ๋“œ๋ ค์š”

ํ•™์Šต ๋Œ€์ƒ์€
๋ˆ„๊ตฌ์ผ๊นŒ์š”?

  • ๊ฒฐ์ œ ์‹œ์Šคํ…œ์ด ๊ถ๊ธˆํ•œ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž

  • ์‹ค์ „ ํ”„๋กœ์ ํŠธ๋ฅผ ํ•˜๊ณ  ์‹ถ์€ ํ•™์ƒ

์„ ์ˆ˜ ์ง€์‹,
ํ•„์š”ํ• ๊นŒ์š”?

  • Kotlin

  • Spring Webflux

  • Spring Data Jpa

  • Spring Data R2DBC

  • MySQL

  • Apache Kafka

์•ˆ๋…•ํ•˜์„ธ์š”
์—ฌ์ •๋ฏผ์ž…๋‹ˆ๋‹ค.

1,009

๋ช…

์ˆ˜๊ฐ•์ƒ

63

๊ฐœ

์ˆ˜๊ฐ•ํ‰

38

๊ฐœ

๋‹ต๋ณ€

4.3

์ 

๊ฐ•์˜ ํ‰์ 

3

๊ฐœ

๊ฐ•์˜

์•ˆ๋…•ํ•˜์„ธ์š”.

์ €๋Š” ๊ฐœ๋ฐœ์ž๋ฉด์„œ ๊ต์œก์ž๋กœ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ•์˜๋ฅผ ๋งŒ๋“ค๋ ค๊ณ  ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐ•์˜๋ฅผ ๋งŒ๋“ค ๋• ํ•„์š”ํ•œ ์ง€์‹๊ณผ ๊ธฐ์ˆ ์„ ๊ตฐ๋”๋”๊ธฐ ์—†์ด ์ „๋‹ฌํ•˜๋Š” ์ •๋ณด ๋ฐ€๋„ ๋†’์€ ์ฝ˜ํ…์ธ ๋ฅผ ์ œ๊ณตํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

์ œ๊ฐ€ ๊ด€์‹ฌ์žˆ๋Š” ๋ถ„์•ผ, ์ •๋ง ์˜๋ฏธ ์žˆ๋‹ค๊ณ  ๋ฏฟ๋Š” ์˜์—ญ์—๋งŒ ๊ฐ•์˜๋ฅผ ๋งŒ๋“ค๋ฉฐ, ๋ˆ„๊ตฌ๋‚˜ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๊ฐ•์˜๋Š” ๋งŒ๋“ค์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ถ”๊ฐ€๋กœ ์ปค๋ฆฌ์–ด๋ฆฌ์—์„œ๋„ ์œ ์šฉํ•œ ๊ธ€๋“ค์„ ์“ฐ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. 

- (ๅ‰) ์นด์นด์˜ค์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ์†Œํ”„ํŠธ์›จ์–ด ์—”์ง€๋‹ˆ์–ด

- (ๅ‰) ์นด์นด์˜ค Ground X ์†Œํ”„ํŠธ์›จ์–ด ์—”์ง€๋‹ˆ์–ด

๋”๋ณด๊ธฐ

์ปค๋ฆฌํ˜๋Ÿผ

์ „์ฒด

21๊ฐœ โˆ™ (7์‹œ๊ฐ„ 8๋ถ„)

ํ•ด๋‹น ๊ฐ•์˜์—์„œ ์ œ๊ณต:

์ˆ˜์—…์ž๋ฃŒ
๊ฐ•์˜ ๊ฒŒ์‹œ์ผ: 
๋งˆ์ง€๋ง‰ ์—…๋ฐ์ดํŠธ์ผ: 

์ˆ˜๊ฐ•ํ‰

์ „์ฒด

31๊ฐœ

4.1

31๊ฐœ์˜ ์ˆ˜๊ฐ•ํ‰

  • ๋ฆฌ๋‚˜๋‹˜์˜ ํ”„๋กœํ•„ ์ด๋ฏธ์ง€
    ๋ฆฌ๋‚˜

    ์ˆ˜๊ฐ•ํ‰ 7

    โˆ™

    ํ‰๊ท  ํ‰์  5.0

    5

    90% ์ˆ˜๊ฐ• ํ›„ ์ž‘์„ฑ

    ๊ฒฌ๊ณ ํ•œ ๊ฒฐ์ œ ์„œ๋น„์Šค ํ†ตํ•ด ์ข‹์€ ์ง€์‹์„ ์–ป์„ ์ˆ˜ ์žˆ์–ด์„œ ๋„ˆ๋ฌด ์ข‹์•˜์–ด์š”! ๊ฐœ์ธ์ ์œผ๋กœ ๊ฒฐ์ œ ์„œ๋น„์Šค๋Š” ๋ฐ์ดํ„ฐ ์ผ๊ด€์„ฑ์ด ๊ต‰์žฅํžˆ ์ค‘์š”ํ•œ ๋ถ€๋ถ„์ธ๋ฐ ๋ˆ„๋ฝ ์•ˆ๋˜๋„๋ก ์—ฌ๋Ÿฌ ๊ธฐ์ˆ ๋“ค์„ ์Šต๋“ ํ•  ์ˆ˜ ์žˆ์–ด์„œ ๋„ˆ๋ฌด ์ข‹์•˜์Šต๋‹ˆ๋‹ค. ์•„์‰ฝ์ง€๋งŒ java ์–ธ์–ด๋กœ ํ•ด์ฃผ์—ˆ์œผ๋ฉด ์ข‹์„๊บผ ๊ฐ™๊ณ  '๊ฒฌ๊ณ ํ•œ ๊ฒฐ์ œ ์„œ๋น„์Šค' ์ค‘์ ์ธ๋ฐ spring webflux ๋Š” ๋„์ž… ํ•œ ๊ฒƒ์— ๋Œ€ํ•ด ํž˜๋“  ๋ถ€๋ถ„์ด ์žˆ์—ˆ์–ด์š”. spring webflux ๋ฅผ ๋ชจ๋ฅด๋Š” ํ•™์ƒ์€ ์ ‘๊ทผ ํ•˜๊ธฐ ์–ด๋ ต์ง€ ์•Š์•˜์„๊นŒ ์ƒ๊ฐ ํ•ฉ๋‹ˆ๋‹ค.

    • ๊ฐ•ํ”„๋กœ๊ทธ๋ž˜๋จธ๋‹˜์˜ ํ”„๋กœํ•„ ์ด๋ฏธ์ง€
      ๊ฐ•ํ”„๋กœ๊ทธ๋ž˜๋จธ

      ์ˆ˜๊ฐ•ํ‰ 24

      โˆ™

      ํ‰๊ท  ํ‰์  4.6

      5

      62% ์ˆ˜๊ฐ• ํ›„ ์ž‘์„ฑ

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

      • ์—ฌ์ •๋ฏผ
        ์ง€์‹๊ณต์œ ์ž

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

    • Daegun Kim๋‹˜์˜ ํ”„๋กœํ•„ ์ด๋ฏธ์ง€
      Daegun Kim

      ์ˆ˜๊ฐ•ํ‰ 16

      โˆ™

      ํ‰๊ท  ํ‰์  4.2

      3

      71% ์ˆ˜๊ฐ• ํ›„ ์ž‘์„ฑ

      ๋‹จ์ˆœ ์žฌ์‚ฌ์šฉ ์žฌ๋ฐฐ์—ดํ•˜์ง€ ์•Š์•˜๋‹ค๊ณ  ํ–ˆ์ง€๋งŒ double-entry ledger์— ๋Œ€ํ•ด์„œ๋‚˜ ๊ธฐ๋ณธ์ ์ธ ledger/wallet ๊ฐœ๋…๋„ ์ œ๋Œ€๋กœ ์„ค๋ช…ํ•ด ๋†“์ง€ ์•Š์€๊ฑธ ๋ณด๋ฉด ์ข€ ์•„์‰ฝ๋‹ค๋Š” ๋А๋‚Œ์ด ๋งŽ๋„ค์š”. ์—ฌ๋Ÿฌ ๋ชจ๋กœ payment system์—์„œ๋Š” ์กฐ๊ธˆ ๋ฒ—์–ด๋‚œ ์ฃผ์ œ ๊ฐ™๋„ค์š”.

      • ์—ฌ์ •๋ฏผ
        ์ง€์‹๊ณต์œ ์ž

        ์™œ Ledger System ์ด ๋‚˜์™”๋Š”์ง€ ๋“ฑ์— ๋Œ€ํ•ด์„œ ์ข€ ๋” ์ž์„ธํ•œ ์—ญ์‚ฌ๋ฅผ ์†Œ๊ฐœํ–ˆ์–ด์•ผ ํ–ˆ๋‚˜์š”? Double Ledger ์™€ Wallet ์‹œ์Šคํ…œ์— ๋Œ€ํ•ด ์ถฉ๋ถ„ํžˆ ํ•ต์‹ฌ์ ์ธ ๋ถ€๋ถ„์€ ์„ค๋ช…ํ–ˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋’ท ๋ถ€๋ถ„์ธ Ledger ์™€ Wallet ๋ถ€๋ถ„์€ ๋“ค์œผ์‹  ๊ฒƒ ๊ฐ™์ง€ ์•Š์€ ๊ฒƒ ๊ฐ™์€๋Œ€ ๋‹จ์ˆœ ์žฌ๋ฐฐ์—ด/์žฌ์‚ฌ์šฉ์— ๋Œ€ํ•ด ์–ธ๊ธ‰ํ•˜์‹  ๊ฑด ๋‚ฉ๋“๋˜์ง€ ์•Š๋„ค์š”. ์‹ค์ œ ์ด๋ก ์„ ๊ตฌํ˜„ ํ•˜๋Š” ๊ฒƒ์ด ๋Œ€ํ•ด์„œ๋„ ์—ฌ๋Ÿฌ ๊ณ ๋ฏผ์ด ์žˆ๊ธฐ ๋งˆ๋ จ์ธ๊ฑฐ ์•„๋‹Œ์ง€ ๋ฌป๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

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

    • ์ด์ฑ„๋ฆผ๋‹˜์˜ ํ”„๋กœํ•„ ์ด๋ฏธ์ง€
      ์ด์ฑ„๋ฆผ

      ์ˆ˜๊ฐ•ํ‰ 1

      โˆ™

      ํ‰๊ท  ํ‰์  4.0

      4

      19% ์ˆ˜๊ฐ• ํ›„ ์ž‘์„ฑ

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

      • HG๋‹˜์˜ ํ”„๋กœํ•„ ์ด๋ฏธ์ง€
        HG

        ์ˆ˜๊ฐ•ํ‰ 5

        โˆ™

        ํ‰๊ท  ํ‰์  4.2

        1

        19% ์ˆ˜๊ฐ• ํ›„ ์ž‘์„ฑ

        ๊ฐ•์˜ ํ€„๋ฆฌํ‹ฐ๊ฐ€ ๋งŒ์กฑ์Šค๋Ÿฝ์ง€ ์•Š์•„์š”.

        ์—ฌ์ •๋ฏผ๋‹˜์˜ ๋‹ค๋ฅธ ๊ฐ•์˜

        ์ง€์‹๊ณต์œ ์ž๋‹˜์˜ ๋‹ค๋ฅธ ๊ฐ•์˜๋ฅผ ๋งŒ๋‚˜๋ณด์„ธ์š”!

        ๋น„์Šทํ•œ ๊ฐ•์˜

        ๊ฐ™์€ ๋ถ„์•ผ์˜ ๋‹ค๋ฅธ ๊ฐ•์˜๋ฅผ ๋งŒ๋‚˜๋ณด์„ธ์š”!

        ์›” โ‚ฉ620,503

        5๊ฐœ์›” ํ• ๋ถ€ ์‹œ

        โ‚ฉ148,500