๊ณต๋ถ€/TIL

[20250304] ์บ์‹ฑ ๊ฐœ๋…, ์บ์‹ฑ ์ „๋žต ํ•„๊ธฐ

dvlpsy๐ŸŒผ 2025. 3. 4. 15:48
๋ฐ˜์‘ํ˜•

๐ŸŽฏ ์ฃผ์ œ

  • Redis๋ฅผ ํ™œ์šฉํ•œ ์บ์‹ฑ(Caching) ์ „๋žต๊ณผ ๊ตฌํ˜„ ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์ด๋ก ์  ์„ค๋ช…
  • ์›น ์„œ๋น„์Šค์—์„œ ์„ฑ๋Šฅ ํ–ฅ์ƒ์„ ์œ„ํ•œ ์บ์‹œ์˜ ๊ฐœ๋…๊ณผ ๋‹ค์–‘ํ•œ ์บ์‹ฑ ์ „๋žต ์†Œ๊ฐœ

 

๐Ÿ“ ํ•ต์‹ฌ๊ฐœ๋… ์ •๋ฆฌ

  1. ์บ์‹œ(Cache)์˜ ๊ธฐ๋ณธ ๊ฐœ๋…
    • CPU์—์„œ ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ํ•˜๋“œ์›จ์–ด ๋ถ€ํ’ˆ์—์„œ ์œ ๋ž˜
    • ์›น ์„œ๋น„์Šค์—์„œ๋Š” ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋น ๋ฅด๊ฒŒ ์ ‘๊ทผํ•˜๊ธฐ ์œ„ํ•œ ์ €์žฅ์†Œ๋กœ ํ™œ์šฉ
    • โญ ๋ ˆ๋””์Šค๋Š” ์บ์‹œ ์šฉ๋„๋กœ ๊ฐ€์žฅ ๋งŽ์ด ํ™œ์šฉ๋˜๋Š” ์ธ๋ฉ”๋ชจ๋ฆฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
  2. ์บ์‹œ ๊ด€๋ จ ์ฃผ์š” ์šฉ์–ด
    • Cache Hit: ์บ์‹œ์—์„œ ์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ฐพ์€ ๊ฒฝ์šฐ
    • Cache Miss: ์บ์‹œ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฐพ์ง€ ๋ชปํ•œ ๊ฒฝ์šฐ
    • Eviction Policy: ์บ์‹œ ๊ณต๊ฐ„ ๋ถ€์กฑ ์‹œ ๋ฐ์ดํ„ฐ ์‚ญ์ œ ์ •์ฑ…
  3. ์ฃผ์š” ์บ์‹ฑ ์ „๋žต                                                                                                                     a) Cache-Aside ์ „๋žต 
    • โญ ๊ฐ€์žฅ ๋‹จ์ˆœํ•˜์ง€๋งŒ ํšจ์œจ์ ์ธ ์ „๋žต 
    • ์žฅ์ : ์ž์ฃผ ์กฐํšŒ๋˜๋Š” ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•ด ๋†’์€ ์„ฑ๋Šฅ ๋ณด์žฅ
    • ๋‹จ์ :
    • ์ฒซ ์š”์ฒญ์€ ํ•ญ์ƒ ๋А๋ฆผ
    • ์ตœ์‹  ๋ฐ์ดํ„ฐ ๋ณด์žฅ์ด ์–ด๋ ค์›€ 
  4. b) Write-Through ์ „๋žต
    • ๋ฐ์ดํ„ฐ ์ž‘์„ฑ ์‹œ ์บ์‹œ๋ฅผ ๋จผ์ € ๊ฑฐ์น˜๋Š” ์ „๋žต
    • ์žฅ์ : ์บ์‹œ์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ํ•ญ์ƒ ์ตœ์‹  ์ƒํƒœ ์œ ์ง€
    • ๋‹จ์ :
      • ์ž์ฃผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๋ฐ์ดํ„ฐ๋„ ์บ์‹œ์— ์ €์žฅ
      • ์ž‘์„ฑ ์†๋„๊ฐ€ ์ƒ๋Œ€์ ์œผ๋กœ ๋А๋ฆผ
    c) Write-Behind ์ „๋žต
    • ์บ์‹œ์— ๋ฐ์ดํ„ฐ๋ฅผ ๋ชจ์•˜๋‹ค๊ฐ€ ์ผ๊ด„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ์‹ 
    • ์žฅ์ : ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ถ€ํ•˜ ๊ฐ์†Œ
    • โญ ๋‹จ์ : ์บ์‹œ ์œ ์‹ค ์‹œ ๋ฐ์ดํ„ฐ ์†์‹ค ์œ„ํ—˜