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

ํŠธ๋ž˜ํ”ฝ ๊ธ‰์ฆ์„ ๊ฒฌ๋””๋Š” ์„œ๋ฒ„ ์‹œ์Šคํ…œ ์„ค๊ณ„ - Coupon ๋ฐœ๊ธ‰ ์„œ๋น„์Šค

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

(5.0) ์ˆ˜๊ฐ•ํ‰ 3๊ฐœ

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

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

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

๋ฐฑ์—”๋“œ
๋ฐฑ์—”๋“œ
์„œ๋ฒ„
์„œ๋ฒ„
์‹ค์Šต ์ค‘์‹ฌ
์‹ค์Šต ์ค‘์‹ฌ
AI
AI
๋Œ€์šฉ๋Ÿ‰ํŠธ๋ž˜ํ”ฝ
๋Œ€์šฉ๋Ÿ‰ํŠธ๋ž˜ํ”ฝ
๋ฐฑ์—”๋“œ
๋ฐฑ์—”๋“œ
์„œ๋ฒ„
์„œ๋ฒ„
์‹ค์Šต ์ค‘์‹ฌ
์‹ค์Šต ์ค‘์‹ฌ
AI
AI
๋Œ€์šฉ๋Ÿ‰ํŠธ๋ž˜ํ”ฝ
๋Œ€์šฉ๋Ÿ‰ํŠธ๋ž˜ํ”ฝ
๋คผ์ด๋“œ
ํ‹ฐ๋งฅ์Šค์†Œํ”„ํŠธ
์นด์นด์˜ค
์นด์นด์˜ค์—”ํ„ฐํ”„๋ผ์ด์ฆˆ
์ž‰์นด์ธํ„ฐ๋„ท

์ž‰์นด์ธํ„ฐ๋„ท

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

๋คผ์ด๋“œ
ํ‹ฐ๋งฅ์Šค์†Œํ”„ํŠธ
์นด์นด์˜ค
์นด์นด์˜ค์—”ํ„ฐํ”„๋ผ์ด์ฆˆ
์ž‰์นด์ธํ„ฐ๋„ท

์ž‰์นด์ธํ„ฐ๋„ท

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

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

  • ๋™์‹œ์„ฑ ๋ฌธ์ œ ํ•ด๊ฒฐ๊ณผ ๋ฐ์ดํ„ฐ ์ •ํ•ฉ์„ฑ ๋ณด์žฅ ๊ธฐ๋ฒ•

  • ๋™๊ธฐ/๋น„๋™๊ธฐ ์ฒ˜๋ฆฌ๋ฅผ ํ†ตํ•œ ํŠธ๋ž˜ํ”ฝ ๋ถ€ํ•˜ ๋ถ„์‚ฐ ์„ค๊ณ„

  • ๋Œ€๊ธฐ์—ด ์‹œ์Šคํ…œ๊ณผ ํ”ผํฌ ํŠธ๋ž˜ํ”ฝ ๋ฐฉ์–ด ์•„ํ‚คํ…์ฒ˜ ๊ตฌํ˜„


ํ‰์†Œ์—” ๊ดœ์ฐฎ๋˜ ์„œ๋ฒ„, ์ด๋ฒคํŠธ๊ฐ€ ์‹œ์ž‘๋˜๋ฉด ์™œ ๋ฌด๋„ˆ์งˆ๊นŒ์š”? ๐Ÿšฆ


  • ์„ ์ฐฉ์ˆœ ์ฟ ํฐ ์ด๋ฒคํŠธ๊ฐ€ ์—ด๋ฆฌ๋ฉด ์ˆ˜๋งŽ์€ ์š”์ฒญ์ด ๊ฐ™์€ ์žฌ๊ณ ๋ฅผ ๋™์‹œ์— ๊ฑด๋“œ๋ฆฝ๋‹ˆ๋‹ค.

  • ์ค€๋น„ํ•œ ์ˆ˜๋Ÿ‰๋ณด๋‹ค ๋” ๋ฐœ๊ธ‰๋˜๊ฑฐ๋‚˜, ๊ฐ™์€ ์‚ฌ์šฉ์ž๊ฐ€ ๋‘ ์žฅ์„ ๋ฐ›๊ฑฐ๋‚˜, ์—ฌ๋Ÿฌ ์ €์žฅ์†Œ์˜ ๊ธฐ๋ก์ด ์–ด๊ธ‹๋‚  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


์ด ๊ฐ•์˜๋Š” ์™„์„ฑ๋œ ์•„ํ‚คํ…์ฒ˜๋ฅผ ์™ธ์šฐ๋Š” ๋Œ€์‹  ํ•˜๋‚˜์˜ ์ฟ ํฐ ๋ฐœ๊ธ‰ ์„œ๋น„์Šค๋ฅผ ์ง์ ‘ ๋ฌด๋„ˆ๋œจ๋ฆฌ๊ณ  ๋‹ค์‹œ ์„ค๊ณ„ํ•ด์š”.


๋ฌธ์ œ๋ฅผ ์žฌํ˜„ํ•˜๊ณ , TPS, P99, ์˜ค๋ฅ˜์œจ๊ณผ ์‹ค์ œ ๋ฐœ๊ธ‰ ์ •ํ™•์„ฑ์„ ์ธก์ •ํ•œ ๋’ค, DB Lock, Redis, Kafka, Cache, ๊ฐ€์ƒ ๋Œ€๊ธฐ์‹ค์„ ์„ ํƒํ•˜๊ณ  ๊ฐ™์€ ๋ถ€ํ•˜๋กœ ๋‹ค์‹œ ๊ฒ€์ฆํ•ฉ๋‹ˆ๋‹ค.


  • Kotlin๊ณผ Spring Boot๋กœ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.

  • Docker Compose๋กœ MySQL, Redis, Kafka๋ฅผ ์‹คํ–‰ํ•˜๋ฉฐ, Redis์™€ Kafka๊ฐ€ ์ฒ˜์Œ์ด์–ด๋„, HTTP, RDB, Spring Boot์˜ ๊ธฐ์ดˆ๊ฐ€ ์žˆ๋‹ค๋ฉด ๋‹จ๊ณ„๋ณ„๋กœ ๋”ฐ๋ผ์˜ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


์ด ๊ฐ•์˜์˜ ํŠน์ง•


๐Ÿ“Œ ํ•˜๋‚˜์˜ ์ฟ ํฐ ์„œ๋น„์Šค๋ฅผ ๊ธฐ๋ณธ ๊ตฌํ˜„๋ถ€ํ„ฐ ๋™์‹œ์„ฑ, ๋น„๋™๊ธฐ ์ฒ˜๋ฆฌ, ์บ์‹œ, ์ •ํ•ฉ์„ฑ ๋ณต๊ตฌ, ํŠธ๋ž˜ํ”ฝ ์ œ์–ด๊นŒ์ง€ ๊ณ„์† ๋ฐœ์ „์‹œ์ผœ์š”.

๐Ÿ“Œ ๋ฌธ์ œ ์žฌํ˜„ โ†’ ๋ณ‘๋ชฉ ์ธก์ • โ†’ ์„ค๊ณ„ ์„ ํƒ โ†’ ๊ฐ™์€ ์กฐ๊ฑด์œผ๋กœ ์žฌ๊ฒ€์ฆํ•˜๋Š” ํ๋ฆ„์„ ๋ชจ๋“  ํŒŒํŠธ์—์„œ ๋ฐ˜๋ณตํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“Œ TPS์™€ P99๋งŒ ๋ณด์ง€ ์•Š์•„์š”. ์ •ํ™•ํžˆ N์žฅ์ด ๋ฐœ๊ธ‰๋๋Š”์ง€, 1์ธ 1๋งค๊ฐ€ ์ง€์ผœ์กŒ๋Š”์ง€, ์ด๋ฒคํŠธ๊ฐ€ MySQL๊นŒ์ง€ ๋น ์ง์—†์ด ์ €์žฅ๋๋Š”์ง€๋„ ํ•จ๊ป˜ ํ™•์ธํ•ด์š”.

๐Ÿ“Œ DB ๋น„๊ด€์  ๋ฝ๊ณผ Redis Lua, ์ธ๋ฉ”๋ชจ๋ฆฌ ํ์™€ Kafka์ฒ˜๋Ÿผ ์—ฌ๋Ÿฌ ๋Œ€์•ˆ์„ ์ง์ ‘ ๋น„๊ตํ•˜๋ฉฐ ์–ธ์ œ ๋ฌด์—‡์„ ์„ ํƒํ• ์ง€ ํŒ๋‹จํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“Œ ์ด๋ก ์œผ๋กœ ๋๋‚ด์ง€ ์•Š์•„์š”. ๋™์ž‘ํ•˜๋Š” ์ฝ”๋“œ, ์‹คํ–‰ ํ™˜๊ฒฝ, k6 ๋ถ€ํ•˜ ์‹œ๋‚˜๋ฆฌ์˜ค, ๋ณ€๊ฒฝ ์ „ํ›„์˜ ๊ฒ€์ฆ ๊ฒฐ๊ณผ๊ฐ€ ํ•œ ์„ธํŠธ๋กœ ๋‚จ์Šต๋‹ˆ๋‹ค.

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

ํ”ผํฌ ํŠธ๋ž˜ํ”ฝ์ด ์ฒ˜์Œ์ธ ์ฃผ๋‹ˆ์–ด ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž

์š”์ฒญ์ด ๋ชฐ๋ฆด ๋•Œ DB, ์บ์‹œ, ํ ์ค‘ ์–ด๋””๋ถ€ํ„ฐ ์†๋Œ€์•ผ ํ• ์ง€ ๋ง‰๋ง‰ํ•œ ๋ถ„๊ป˜ ์ž˜ ๋งž์•„์š”.

์„ค๊ณ„ ์—ญ๋Ÿ‰์„ ํ‚ค์šฐ๊ณ  ์‹ถ์€ ๋ฐฑ์—”๋“œ ์ทจ์—… ์ค€๋น„์ƒ

๊ธฐ์ˆ  ์ด๋ฆ„์„ ๋‚˜์—ดํ•˜๋Š” ๋Œ€์‹  ๋ฌธ์ œ, ์„ ํƒ, ๊ฒฐ๊ณผ๋ฅผ ํ”„๋กœ์ ํŠธ๋กœ ์„ค๋ช…ํ•˜๊ณ  ์‹ถ์€ ๋ถ„๊ป˜ ์ถ”์ฒœํ•ฉ๋‹ˆ๋‹ค.

์„ฑ๋Šฅ์„ ์ˆซ์ž๋กœ ๊ฒ€์ฆํ•˜๊ณ  ์‹ถ์€ ์„œ๋ฒ„ ๊ฐœ๋ฐœ ํ•™์Šต์ž

CRUD๋ฅผ ๋„˜์–ด ๋ถ€ํ•˜ ํ…Œ์ŠคํŠธ์™€ ์žฅ์•  ์žฌํ˜„์œผ๋กœ ์‹œ์Šคํ…œ์„ ๋ฐœ์ „์‹œํ‚ค๊ณ  ์‹ถ์€ ๋ถ„๊ป˜ ๋„์›€์ด ๋ผ์š”.

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


์ˆ˜๊ฐ• ํ›„์—๋Š”

โœ“ ๋™์‹œ ์š”์ฒญ์—์„œ๋„ ์ •ํ™•ํ•œ ์ˆ˜๋Ÿ‰๊ณผ 1์ธ 1๋งค ๊ทœ์น™์„ ํ•จ๊ป˜ ์ง€ํ‚ค๋Š” ๋ฐœ๊ธ‰ ๋กœ์ง์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

โœ“ DB ๋น„๊ด€์  ๋ฝ, Redis ๋ถ„์‚ฐ ๋ฝ, Redis Lua ์›์ž ์—ฐ์‚ฐ์˜ ์žฅ๋‹จ์ ์„ ๋น„๊ตํ•˜๊ณ  ์ƒํ™ฉ์— ๋งž๋Š” ๋ฐฉ์‹์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ์–ด์š”.

โœ“ Kafka๋กœ ์‚ฌ์šฉ์ž ์‘๋‹ต๊ณผ DB ์ €์žฅ์„ ๋ถ„๋ฆฌํ•˜๊ณ , ์‹คํŒจ ๋ฉ”์‹œ์ง€๋ฅผ DLT์™€ ์žฌ์ฒ˜๋ฆฌ ํ๋ฆ„์œผ๋กœ ๋ณต๊ตฌํ•ฉ๋‹ˆ๋‹ค.

โœ“ Cache Stampede, ๋งค์ง„ ํ›„ ์š”์ฒญ ํญ์ฃผ, Redis์™€ MySQL์˜ ๋ถˆ์ผ์น˜๋ฅผ ํƒ์ง€ํ•˜๊ณ  ๋Œ€์‘ํ•  ์ˆ˜ ์žˆ์–ด์š”.

โœ“ ๊ฐ€์ƒ ๋Œ€๊ธฐ์‹ค๊ณผ Gateway Rate Limit์„ ์—ฐ๊ฒฐํ•ด ์ •์ƒ ์‚ฌ์šฉ์ž๋Š” ๊ธฐ๋‹ค๋ฆฌ๊ฒŒ ํ•˜๊ณ  ์–ด๋ทฐ์ €๋Š” ์ž…๊ตฌ์—์„œ ์ฐจ๋‹จํ•ฉ๋‹ˆ๋‹ค.

โœ“ TPS, P99, ์˜ค๋ฅ˜์œจ๋ฟ ์•„๋‹ˆ๋ผ ๋ฐœ๊ธ‰๋Ÿ‰, ์ค‘๋ณต ์—ฌ๋ถ€, ์ €์žฅ ๋ˆ„๋ฝ๊นŒ์ง€ ์ธก์ •ํ•ด ์„ค๊ณ„ ๊ฐœ์„ ์„ ๊ฒฐ๊ณผ๋กœ ์ฆ๋ช…ํ•  ์ˆ˜ ์žˆ์–ด์š”.


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

๋ฌธ์ œ๋ฅผ ์žฌํ˜„ํ•˜๊ณ , ์ˆซ์ž๋กœ ์›์ธ์„ ์ฐพ์•„์š”

์ฟ ํฐ ์ดˆ๊ณผ๋ฐœ๊ธ‰๊ณผ ๋ณ‘๋ชฉ์„ ์ผ๋ถ€๋Ÿฌ ๋งŒ๋“ค์–ด ๋ด์š”. TPS, P99, ์˜ค๋ฅ˜์œจ๊ณผ ์ •ํ™•์„ฑ ์ง€ํ‘œ๋ฅผ ์ฝ๊ณ , ์„ค๊ณ„ ์ „ํ›„๋ฅผ ๊ฐ™์€ k6 ๋ถ€ํ•˜ ์กฐ๊ฑด์—์„œ ๋น„๊ตํ•ฉ๋‹ˆ๋‹ค. ๋А๋‚Œ์ด ์•„๋‹ˆ๋ผ ์ธก์ •๊ฐ’์œผ๋กœ ๋‹ค์Œ ์„ ํƒ์˜ ๊ทผ๊ฑฐ๋ฅผ ๋งŒ๋“ค์–ด์š”.

๊ธฐ๋ณธ ๊ตฌํ˜„๋ถ€ํ„ฐ ํŠธ๋ž˜ํ”ฝ ์ œ์–ด๊นŒ์ง€ 6๋‹จ๊ณ„๋กœ ์„ฑ์žฅํ•ฉ๋‹ˆ๋‹ค

์ฟ ํฐ ์š”๊ตฌ์‚ฌํ•ญ ๊ตฌํ˜„, ๋™์‹œ์„ฑ ์ œ์–ด, ๋น„๋™๊ธฐ ์ฒ˜๋ฆฌ, ์บ์‹œ ์ „๋žต, ์ •ํ•ฉ์„ฑ ๋ณต๊ตฌ, ํŠธ๋ž˜ํ”ฝ ์ œ์–ด์˜ ์ˆœ์„œ๋กœ ์ง„ํ–‰ํ•ด์š”. ๊ฐ ๋‹จ๊ณ„์˜ ํ•œ๊ณ„๋ฅผ ํ™•์ธํ•˜๋ฉด์„œ ๋‹ค์Œ ์„ค๊ณ„๊ฐ€ ํ•„์š”ํ•œ ์ด์œ ๋ฅผ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์ดํ•ดํ•ฉ๋‹ˆ๋‹ค.

์—ฌ๋Ÿฌ ๊ธฐ์ˆ ์„ ํ•˜๋‚˜์˜ ์ฟ ํฐ ๋ฐœ๊ธ‰ ํ๋ฆ„์œผ๋กœ ์—ฐ๊ฒฐํ•ด์š”

Gateway์™€ ๊ฐ€์ƒ ๋Œ€๊ธฐ์‹ค์ด ์ง„์ž… ์†๋„๋ฅผ ์ œ์–ดํ•˜๊ณ  Redis๊ฐ€ ์žฌ๊ณ ์™€ ์ค‘๋ณต ๋ฐœ๊ธ‰์„ ์›์ž์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•ด์š”. Kafka Worker๋Š” MySQL์— ์ €์žฅํ•˜๊ณ  ๋ฐฐ์น˜ ์Šค์ผ€์ค„๋Ÿฌ๋Š” ๋‘ ์ €์žฅ์†Œ์˜ ๋ถˆ์ผ์น˜๋ฅผ ์ ๊ฒ€ํ•ฉ๋‹ˆ๋‹ค.

์ฝ”๋“œ์™€ ๊ฒ€์ฆ ๊ฒฐ๊ณผ๊ฐ€ ํ•จ๊ป˜ ๋‚จ์Šต๋‹ˆ๋‹ค

Kotlin๊ณผ Spring Boot๋กœ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค. Docker Compose๋กœ MySQL, Redis, Kafka๋ฅผ ์‹คํ–‰ํ•˜๊ณ  k6๋กœ ์‹ค์ œ ๋ถ€ํ•˜๋ฅผ ๋„ฃ์–ด TPS, P99, ์˜ค๋ฅ˜์œจ, ๋ฐœ๊ธ‰๋Ÿ‰, ์ค‘๋ณต ์—ฌ๋ถ€์™€ ์ €์žฅ ๋ˆ„๋ฝ์„ ํ™•์ธํ•ด์š”.

์ด ๊ฐ•์˜๋ฅผ ๋งŒ๋“  ์ด์œ 

  • ์™„์„ฑ๋œ ์•„ํ‚คํ…์ฒ˜๋ฅผ ๋ณด๋ฉด ๋ชจ๋“  ์„ ํƒ์ด ๋‹น์—ฐํ•ด ๋ณด์ด์ง€๋งŒ, ์‹ค๋ฌด์—์„œ๋Š” ์›์ธ์„ ์ฐพ๊ณ  ์—ฌ๋Ÿฌ ๋Œ€์•ˆ ์ค‘ ํ•˜๋‚˜๋ฅผ ๊ณจ๋ผ์•ผ ํ•ด์š”.

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

์ด ๊ฐ•์˜์—์„œ๋Š” ๋‹ค๋ฃจ์ง€ ์•Š์•„์š”

  • ๊ฒฐ์ œ์™€ ๋ฐฐ์†ก ๊ฐ™์€ ์ฟ ํฐ ์ฃผ๋ณ€ ๋„๋ฉ”์ธ์ด๋‚˜ ๋ชจ๋“  ๋ถ„์‚ฐ ์‹œ์Šคํ…œ ์ด๋ก ์„ ๋„“๊ฒŒ ํ›‘์ง€๋Š” ์•Š์•„์š”.

  • ์‚ฌ์ „์— ๊ณ ์ •๋œ ์ˆ˜๋Ÿ‰์˜ ์ฟ ํฐ ๋ฐœ๊ธ‰, 1์ธ 1๋งค, ์ •ํ•ด์ง„ ์‹œ์ž‘ ์‹œ๊ฐ, ๋งค์ง„ ์‹œ ์ข…๋ฃŒ๋ผ๋Š” ์กฐ๊ฑด์— ์ง‘์ค‘ํ•ฉ๋‹ˆ๋‹ค.

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

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

โ€ข Kotlin, Spring Boot, Gradle์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

โ€ข MySQL, Redis, Kafka๋Š” Docker Compose๋กœ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

โ€ข ๋ถ€ํ•˜ ํ…Œ์ŠคํŠธ์—๋Š” k6๋ฅผ ์‚ฌ์šฉํ•ด์š”.

โ€ข Docker๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” Windows, macOS, Linux ํ™˜๊ฒฝ์ด๋ฉด ์‹ค์Šตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

โ€ข ์›ํ™œํ•œ ์‹ค์Šต์„ ์œ„ํ•ด 8GB ์ด์ƒ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๊ถŒ์žฅํ•ด์š”.

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

โ€ข ๊ฐ•์˜ ์Šฌ๋ผ์ด๋“œ์™€ ์ „์ฒด ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

โ€ข ํŒŒํŠธ๋ณ„ ์‹คํ–‰ ํ™˜๊ฒฝ๊ณผ Docker Compose ๊ตฌ์„ฑ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

โ€ข ์ง์ ‘ ๋ฐ˜๋ณต ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” k6 ๋ถ€ํ•˜ ํ…Œ์ŠคํŠธ ์‹œ๋‚˜๋ฆฌ์˜ค๊ฐ€ ์žˆ์–ด์š”.

โ€ข ๊ฐ ๋‹จ๊ณ„์˜ ์„ค๊ณ„ ๋ฌธ์„œ์™€ ๋ณ€๊ฒฝ ์ „ํ›„ ๊ฒ€์ฆ ๊ฒฐ๊ณผ๋ฅผ ํ•จ๊ป˜ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

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

โ€ข HTTP์™€ REST API์˜ ๊ธฐ๋ณธ ๊ฐœ๋…์ด ํ•„์š”ํ•ด์š”.

โ€ข ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ SELECT, UPDATE ์ˆ˜์ค€์˜ SQL์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

โ€ข Java ๋˜๋Š” Kotlin ๋ฌธ๋ฒ•์„ ์•Œ๊ณ  ์žˆ์–ด์•ผ ํ•ด์š”.

โ€ข Spring Boot ๊ธฐ์ดˆ ์ง€์‹์„ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค.

โ€ข Redis์™€ Kafka ๊ฒฝํ—˜์€ ํ•„์ˆ˜๊ฐ€ ์•„๋‹ˆ์—์š”.




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

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

  • ์‹ค์ „ ๊ฒฝํ—˜์„ ์Œ“๊ณ  ์‹ถ์€ ์ฃผ๋‹ˆ์–ด ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž

  • ๋™์‹œ์„ฑ ์ œ์–ด์™€ ๋Œ€์šฉ๋Ÿ‰ ํŠธ๋ž˜ํ”ฝ ์ฒ˜๋ฆฌ๋ฅผ ๋ฐฐ์šฐ๊ณ  ์‹ถ์€ ๋ฐฑ์—”๋“œ ์ทจ์—… ์ค€๋น„์ƒ

  • ์‹ค๋ฌด ์ˆ˜์ค€์˜ ๋ฐฑ์—”๋“œ ์‹œ์Šคํ…œ ์„ค๊ณ„๋ฅผ ๊ฒฝํ—˜ํ•˜๊ณ  ์‹ถ์€ ์ปดํ“จํ„ฐ๊ณตํ•™ ์ „๊ณต ๋Œ€ํ•™์ƒ

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

  • ๋ฐฑ์—”๋“œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด(Java, Python ๋“ฑ) ๊ธฐ๋ณธ ๋ฌธ๋ฒ• ์ดํ•ด

  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ SQL ๊ธฐ์ดˆ ์ง€์‹

  • REST API์™€ HTTP ํ†ต์‹ ์— ๋Œ€ํ•œ ๊ธฐ๋ณธ ๊ฐœ๋…

์•ˆ๋…•ํ•˜์„ธ์š”
ํ•œ์กฐ๊ฐ์ž…๋‹ˆ๋‹ค.

์ปค๋ฆฌ์–ด์ธ์ฆ

1,029

๋ช…

์ˆ˜๊ฐ•์ƒ

39

๊ฐœ

์ˆ˜๊ฐ•ํ‰

43

๊ฐœ

๋‹ต๋ณ€

4.9

์ 

๊ฐ•์˜ ํ‰์ 

5

๊ฐœ

๊ฐ•์˜

์นด์นด์˜ค, SK๋ฅผ ๊ฑฐ์ณ ๊ฐœ๋ฐœ์ž๋กœ ์ผํ•˜๋ฉฐ
์‹ค์ œ ์„œ๋น„์Šค ํ™˜๊ฒฝ์—์„œ ๋‹ค์–‘ํ•œ ๋ฐฑ์—”๋“œ ์‹œ์Šคํ…œ์„ ์„ค๊ณ„ํ•˜๊ณ  ์šด์˜ํ•ด์™”์Šต๋‹ˆ๋‹ค.

๊ทธ ๊ฐ„ ๊ฒช์—ˆ๋˜ ์‹œํ–‰์ฐฉ์˜ค์™€ ๊ณ ๋ฏผ๋“ค์ด
์ˆ˜๊ฐ•์ƒ ์—ฌ๋Ÿฌ๋ถ„์˜ ์‹œ๊ฐ„๊ณผ ์„ ํƒ์„ ์กฐ๊ธˆ์ด๋ผ๋„ ์•„๊ปด์ค„ ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ผ๋Š” ๋งˆ์Œ์œผ๋กœ
์ง€์‹๊ณต์œ  ์ฝ˜ํ…์ธ ๋ฅผ ๋งŒ๋“ค๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ฝ˜ํ…์ธ ์— ๋Œ€ํ•œ ์˜๊ฒฌ์ด๋‚˜ ๊ฐœ์„ ์ ์ด ์žˆ๋‹ค๋ฉด
์•„๋ž˜ ๋ฉ”์ผ๋กœ ์–ธ์ œ๋“  ํŽธํ•˜๊ฒŒ ๋ง์”€ํ•ด์ฃผ์„ธ์š”.
์—ฌ๋Ÿฌ๋ถ„์˜ ์†”์งํ•œ ํ”ผ๋“œ๋ฐฑ์„ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.
apiece.dev.ai@gmail.com

๋”๋ณด๊ธฐ

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

์ „์ฒด

59๊ฐœ โˆ™ (10์‹œ๊ฐ„ 17๋ถ„)

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

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

์ˆ˜๊ฐ•ํ‰

์ „์ฒด

3๊ฐœ

5.0

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

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

    ์ˆ˜๊ฐ•ํ‰ 11

    โˆ™

    ํ‰๊ท  ํ‰์  5.0

    5

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

    ๋Œ€๊ทœ๋ชจ ํŠธ๋ž˜ํ”ฝ์—์„œ ๋ฐœ์ƒ ๊ฐ€๋Šฅํ•œ ๋ฌธ์ œ๋“ค์ด ๋จธ๋ฆฟ์†์— ์ •๋ฆฌ๋˜์–ด ์žˆ์ง€ ์•Š์•˜์—ˆ๋Š”๋ฐ ์ด ๊ฐ•์˜ ํ•˜๋‚˜๋กœ ์กฐ๊ฐ๋‚˜์žˆ๋˜ ์ง€์‹๋“ค์ด ํ•˜๋‚˜๋กœ ํ•ฉ์ณ์ง€๋Š” ๊ธฐ๋ถ„์ด๋„ค์š”.. ์ด๋Ÿฐ ๊ฐ•์˜๋ฅผ ๋“ค์„ ์ˆ˜ ์žˆ๋‹ค๋Š” ์‚ฌ์‹ค์— ๋„ˆ๋ฌด ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

    • ํ•œ์กฐ๊ฐ
      ์ง€์‹๊ณต์œ ์ž

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

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

    ์ˆ˜๊ฐ•ํ‰ 3

    โˆ™

    ํ‰๊ท  ํ‰์  5.0

    5

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

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

      ์ˆ˜๊ฐ•ํ‰ 7

      โˆ™

      ํ‰๊ท  ํ‰์  5.0

      5

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

      ํ•œ์กฐ๊ฐ๋‹˜์˜ ๋‹ค๋ฅธ ๊ฐ•์˜

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

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

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

      ์–ผ๋ฆฌ๋ฒ„๋“œ ํ• ์ธ ์ค‘

      โ‚ฉ16,500

      70%

      โ‚ฉ55,000

      ํ‰์ƒ๊ต์œก์ด์šฉ๊ถŒ ์ง€์› ๊ฐ•์˜