๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ›๏ธ Architecture

[๊ฐ€์ƒ ๋ฉด์ ‘ ์‚ฌ๋ก€๋กœ ๋ฐฐ์šฐ๋Š” ๋Œ€๊ทœ๋ชจ ์‹œ์Šคํ…œ ์„ค๊ณ„ ๊ธฐ์ดˆ] 11์žฅ ๋‰ด์Šค ํ”ผ๋“œ ์‹œ์Šคํ…œ ์„ค๊ณ„

by GroovyArea 2023. 3. 19.

๋‰ด์Šค ํ”ผ๋“œ

  • ํ™ˆํŽ˜์ด์ง€ ์ค‘์•™์— ์ง€์†์ ์œผ๋กœ ์—…๋ฐ์ดํŠธ๋˜๋Š” ์Šคํ† ๋ฆฌ๋“ค
  • ์‚ฌ์šฉ์ž ์ƒํƒœ ์ •๋ณด ์—…๋ฐ์ดํŠธ, ์‚ฌ์ง„, ๋น„๋””์˜ค, ๋งํฌ, ์•ฑ ํ™œ๋™ ๋“ฑ๋“ฑ

1๋‹จ๊ณ„ : ๋ฌธ์ œ ์ดํ•ด ๋ฐ ์„ค๊ณ„ ๋ฒ”์œ„ ํ™•์ •

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

2๋‹จ๊ณ„ : ๊ฐœ๋žต์  ์„ค๊ณ„์•ˆ ์ œ์‹œ ๋ฐ ๋™์˜ ๊ตฌํ•˜๊ธฐ

  • ์„ค๊ณ„์•ˆ์€ ํ”ผ๋“œ ๋ฐœํ–‰๊ณผ ๋‰ด์Šค ํ”ผ๋“œ ์ƒ์„ฑ ๋‘ ๊ฐ€์ง€ ๋ถ€๋ถ„
    • ํ”ผ๋“œ ๋ฐœํ–‰ : ์‚ฌ์šฉ์ž๊ฐ€ ์Šคํ† ๋ฆฌ๋ฅผ ํฌ์ŠคํŒ…ํ•˜๋ฉด ์บ์‹œ์™€ DB์— ๊ธฐ๋ก, ์นœ๊ตฌ์˜ ๋‰ด์Šค ํ”ผ๋“œ์—๋„ ์ „์†ก
    • ๋‰ด์Šค ํ”ผ๋“œ ์ƒ์„ฑ : ๋‰ด์Šค ํ”ผ๋“œ๋Š” ๋ชจ๋“  ์นœ๊ตฌ์˜ ํฌ์ŠคํŒ…์„ ์‹œ๊ฐ„ ํ๋ฆ„ ์—ญ์ˆœ์œผ๋กœ ๋ชจ์•„์„œ ๋งŒ๋“ ๋‹ค๊ณ  ๊ฐ€์ •

๋‰ด์Šค ํ”ผ๋“œ API

  • ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์™€ ํ†ต์‹ ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” ์ˆ˜๋‹จ
  • HTTP ํ”„๋กœํ† ์ฝœ ๊ธฐ๋ฐ˜
  • ์ƒํƒœ ์ •๋ณด๋ฅผ ์—…๋ฐ์ดํŠธ, ๋‰ด์Šค ํ”ผ๋“œ๋ฅผ ๊ฐ€์ ธ์˜ค๊ธฐ, ์นœ๊ตฌ ์ถ”๊ฐ€ ๋“ฑ์˜ ๋‹ค์–‘ํ•œ ์ž‘์—… ์ˆ˜ํ–‰
  • ํ”ผ๋“œ ๋ฐœํ–‰ API
    • HTTP POST ํ˜•ํƒœ
    • POST /v1/me/feed
    • ์ธ์ž : ๋ฐ”๋”” (ํฌ์ŠคํŒ… ๋‚ด์šฉ), Authorization ํ—ค๋” (API ํ˜ธ์ถœ์„ ์ธ์ฆํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ)
  • ๋‰ด์Šค ์ฝ๊ธฐ API
    • ๋‰ด์Šค ํ”ผ๋“œ๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” API
    • GET /v1/me/feed
    • ์ธ์ž : Authorization ํ—ค๋” (API ํ˜ธ์ถœ์„ ์ธ์ฆํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ)

ํ”ผ๋“œ ๋ฐœํ–‰

  • ์‚ฌ์šฉ์ž : ๋ชจ๋ฐ”์ผ ์•ฑ์ด๋‚˜ ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ƒˆ ํฌ์ŠคํŒ…์„ ์˜ฌ๋ฆฌ๋Š” ์ฃผ์ฒด
    • POST /v1/me/feed API๋ฅผ ์‚ฌ์šฉ
  • ๋กœ๋“œ๋ฐธ๋Ÿฐ์„œ
    • ํŠธ๋ž˜ํ”ฝ์„ ์›น ์„œ๋ฒ„๋“ค๋กœ ๋ถ„์‚ฐ
  • ์›น ์„œ๋ฒ„
    • HTTP ์š”์ฒญ์„ ๋‚ด๋ถ€ ์„œ๋น„์Šค๋กœ ์ค‘๊ณ„ํ•˜๋Š” ์—ญํ• ์„ ๋‹ด๋‹น
  • ํฌ์ŠคํŒ… ์ €์žฅ ์„œ๋น„์Šค
    • ์ƒˆ ํฌ์ŠคํŒ…์„ DB์™€ ์บ์‹œ์— ์ €์žฅ
  • ํฌ์ŠคํŒ… ์ „์†ก ์„œ๋น„์Šค
    • ์ƒˆ ํฌ์ŠคํŒ…์„ ์นœ๊ตฌ์˜ ๋‰ด์Šค ํ”ผ๋“œ์— ํ‘ธ์‹œ
    • ๋‰ด์Šค ํ”ผ๋“œ ๋ฐ์ดํ„ฐ๋Š” ์ผ€์‹œ์— ๋ณด๊ด€ํ•˜์—ฌ ๋น ๋ฅด๊ฒŒ ์ฝ์–ด๊ฐˆ ์ˆ˜ ์žˆ๋„๋ก ํ•จ
  • ์•Œ๋ฆผ ์„œ๋น„์Šค
    • ์นœ๊ตฌ๋“ค์—๊ฒŒ ์ƒˆ ํฌ์ŠคํŒ…์ด ์˜ฌ๋ผ์™”์Œ์„ ์•Œ๋ฆผ
    • ํ‘ธ์‹œ ์•Œ๋ฆผ์„ ๋ณด๋ƒ„

๋‰ด์Šค ํ”ผ๋“œ ์ƒ์„ฑ

  • ์‚ฌ์šฉ์ž
    • ๋‰ด์Šค ํ”ผ๋“œ๋ฅผ ์ฝ๋Š” ์ฃผ์ฒด
    • GET /v1/me/feed API๋ฅผ ์ด์šฉ
  • ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ
    • ํŠธ๋ž˜ํ”ฝ์„ ์›น ์„œ๋ฒ„๋“ค๋กœ ๋ถ„์‚ฐ
  • ์›น ์„œ๋ฒ„
    • ํŠธ๋ž˜ํ”ฝ์„ ๋‰ด์Šค ํ”ผ๋“œ ์„œ๋น„์Šค๋กœ ๋ณด๋ƒ„
  • ๋‰ด์Šค ํ”ผ๋“œ ์„œ๋น„์Šค
    • ์บ์‹œ์—์„œ ๋‰ด์Šค ํ”ผ๋“œ๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ์„œ๋น„์Šค
  • ๋‰ด์Šค ํ”ผ๋“œ ์บ์‹œ
    • ๋‰ด์Šค ํ”ผ๋“œ๋ฅผ ๋ Œ๋”๋ง ํ•  ๋•Œ ํ•„์š”ํ•œ ํ”ผ๋“œ ID๋ฅผ ๋ณด๊ด€

3๋‹จ๊ณ„ : ์ƒ์„ธ ์„ค๊ณ„

ํ”ผ๋“œ ๋ฐœํ–‰ ํ๋ฆ„ ์„ค๊ณ„

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

ํ”ผ๋“œ ์ฝ๊ธฐ ํ๋ฆ„ ์ƒ์„ธ ์„ค๊ณ„

  • ์‚ฌ์šฉ์ž๊ฐ€ ๋‰ด์Šค ํ”ผ๋“œ๋ฅผ ์ฝ์œผ๋ ค๋Š” ์š”์ฒญ์„ ๋ณด๋ƒ„
  • ๋กœ๋“œ๋ฐธ๋Ÿฐ์„œ๊ฐ€ ์š”์ฒญ์„ ์›น ์„œ๋ฒ„ ๊ฐ€์šด๋ฐ ํ•˜๋‚˜๋กœ ๋ณด๋ƒ„
  • ์›น ์„œ๋ฒ„๋Š” ๋‰ด์Šค ํ”ผ๋“œ ์„œ๋น„์Šค๋ฅผ ํ˜ธ์ถœ
  • ๋‰ด์Šค ํ”ผ๋“œ ์„œ๋น„์Šค๋Š” ๋‰ด์Šค ํ”ผ๋“œ ์บ์‹œ์—์„œ ํฌ์ŠคํŒ… ID ๋ชฉ๋ก์„ ๊ฐ€์ ธ์˜ด
  • ์‚ฌ์šฉ์ž ์บ์‹œ์™€ ํฌ์ŠคํŒ… ์บ์‹œ๋ฅผ ํ†ตํ•ด ์™„์ „ํ•œ ๋‰ด์Šค ํ”ผ๋“œ๋ฅผ ๋งŒ๋“ฆ
  • ์ƒ์„ฑ๋œ ๋‰ด์Šค ํ”ผ๋“œ๋ฅผ JSON ํ˜•ํƒœ๋กœ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ๋ณด๋ƒ„

์บ์‹œ ๊ตฌ์กฐ

  • ์บ์‹œ๋Š” ๋‰ด์Šค ํ”ผ๋“œ ์‹œ์Šคํ…œ์˜ ํ•ต์‹ฌ ์ปดํฌ๋„ŒํŠธ
  • ๋‰ด์Šค ํ”ผ๋“œ
    • ๋‰ด์Šค ํ”ผ๋“œ์˜ ID๋ฅผ ๋ณด๊ด€
  • ์ฝ˜ํ…์ธ 
    • ํฌ์ŠคํŒ… ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๊ด€
    • ์ธ๊ธฐ ์ฝ˜ํ…์ธ ๋Š” ๋”ฐ๋กœ ๋ณด๊ด€
  • ์†Œ์…œ ๊ทธ๋ž˜ํ”„
    • ์‚ฌ์šฉ์ž ๊ฐ„ ๊ด€๊ณ„ ์ •๋ณด๋ฅผ ๋ณด๊ด€
  • ํ–‰๋™
    • ํฌ์ŠคํŒ…์— ๋Œ€ํ•œ ์‚ฌ์šฉ์ž์˜ ํ–‰์œ„์— ๊ด€ํ•œ ์ •๋ณด๋ฅผ ๋ณด๊ด€
    • ํฌ์ŠคํŒ…์— ๋Œ€ํ•œ ์ข‹์•„์š”๋‚˜ ๋‹ต๊ธ€ ๋“ฑ๋“ฑ์ด ์ด์— ํ•ด๋‹น
  • ํšŸ์ˆ˜
    • ์ข‹์•„์š” ํšŸ์ˆ˜, ์‘๋‹ต ์ˆ˜, ํŒ”๋กœ์–ด ์ˆ˜, ํŒ”๋กœ์ž‰ ์ˆ˜ ๋“ฑ์˜ ์ •๋ณด๋ฅผ ๋ณด๊ด€

4๋‹จ๊ณ„ : ๋งˆ๋ฌด๋ฆฌ

  • ์ถ”๊ฐ€๋กœ ๋‹ค๋ฃจ๋ฉด ์ข‹์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ทœ๋ชจ ํ™•์žฅ ์ฃผ์ œ
    • ์ˆ˜์ง์  ๊ทœ๋ชจ ํ™•์žฅ vs ์ˆ˜ํ‰์  ๊ทœ๋ชจ ํ™•์žฅ
    • SQL vs NoSQL
    • ์ฃผ-๋ถ€(master-slave) ๋‹ค์ค‘ํ™”
    • ๋ณต์ œ๋ณธ(replica)์— ๋Œ€ํ•œ ์ฝ๊ธฐ ์—ฐ์‚ฐ
    • ์ผ๊ด€์„ฑ ๋ชจ๋ธ(consistency model)
    • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ƒค๋”ฉ(sharding)
  • ์ด ์™ธ์—๋„ ๋…ผ์˜ํ•ด ๋ณด๋ฉด ์ข‹์„ ๋งŒํ•œ ์ฃผ์ œ
    • ์›น ๊ณ„์ธต(web tier)์„ ๋ฌด์ƒํƒœ๋กœ ์šด์˜ํ•˜๊ธฐ
    • ๊ฐ€๋Šฅํ•œ ํ•œ ๋งŽ์€ ๋ฐ์ดํ„ฐ๋ฅผ ์บ์‹œ ํ•  ๋ฐฉ๋ฒ•
    • ์—ฌ๋Ÿฌ ๋ฐ์ดํ„ฐ ์„ผํ„ฐ๋ฅผ ์ง€์›ํ•  ๋ฐฉ๋ฒ•
    • ๋ฉ”์‹œ์ง€ ํ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ปดํฌ๋„ŒํŠธ ์‚ฌ์ด์˜ ๊ฒฐํ•ฉ๋„ ๋‚ฎ์ถ”๊ธฐ
    • ํ•ต์‹ฌ ๋ฉ”ํŠธ๋ฆญ์— ๋Œ€ํ•œ ๋ชจ๋‹ˆํ„ฐ๋ง
๋ฐ˜์‘ํ˜•