์บ์๋ผ๋๊ฑด... ์ ๊ณต ์์ ๋ค์ผ๋ฉด์ ์๋์์ด ๋ฐฐ์ด๊ฑฐ์ง๋ง..
์์ผ ๊ฐ๋ตํ ๋ด ์ธ์ด๋ก ์ ๋ฆฌํด๋ณธ์ ์ ์๋ ๋ฏ ํด์ ์ ๋ฆฌํ๋ ์ค
๐Cache ๋?
RAM์ ์ ์ฅ๋๋ ์์ ๋ฐ์ดํฐ ์ ์ฅ์.
์ฐ๋ฆฌ๊ฐ ํํ ์๋ DB๋ ๋์คํฌ์ ์ ์ฅ๋จ.
๋ฐ๋ผ์ ์ฝ์ด์ค๊ธฐ, ์ฐ๊ธฐ์ ์๊ฐ์ด ๊ฑธ๋ฆผ.
๋ฐ๋ฉด์ RAM์ ๋ฐ์ดํฐ๊ฐ ์ ์ฅ๋๊ฒ ๋๋ฉด, ๋นจ๋ฆฌ ์๋ค๊ฐ๋ค๊ฐ ๊ฐ๋ฅํ๊ธฐ๋๋ฌธ์ ์กฐํ ์ฑ๋ฅ์ด ๋งค์ฐ ๋นจ๋ผ์ง.
ํ์ง๋ง RAM๊ฐ๊ฒฉ์ด ๋น์ผ๋ฐ์ ๋ค ์ด์ ๊ฐ ์์ง์..
๐์บ์ฑ ์ ๋ต 2๊ฐ์ง
1. Cache Aside ์ ๋ต
์ด๋ป๊ฒ "์กฐํ"ํ ์ง์ ๊ดํ ์ ๋ต์ด๋ค.
์ฐ์ , ๋ด๊ฐ ํน์ ๋ฐ์ดํฐ๋ฅผ ์กฐํํ๊ณ ์ถ์๋, ์ผ๋จ ์บ์๋ก ๊ฐ.
๊ทธ๋ฆฌ๊ณ ์บ์์ ๋ด๊ฐ ์ฐพ๋ ๋ฐ์ดํฐ๊ฐ
์์ผ๋ฉด(=Cache Hit) ๊ฑ ๊ทธ๋๋ก ๊ฐ์ ธ์ค๊ณ
์์ผ๋ฉด(=Cache Miss) ๊ทธ์ ์์ผ DB๋ก ๊ฐ์ ์ฐพ์.
๊ทธ๋ฆฌ๊ณ DB์ ์์ผ๋ฉด, ๊ทธ๊ฑธ ๊ฐ๊ณ ์์ ๋ค์ Cache์๋ ์ ์ฅ.
2. Write Around ์ ๋ต
์ด๋ป๊ฒ "์ธ์ง"์ ๊ดํ ์ ๋ต์ด๋ค.
๋ฐ์ดํฐ๋ฅผ ์๋ก ์ฐ๊ฑฐ๋, ์ ๋ฐ์ดํธํ ์ผ์ด ์์ ๋ ๋ฌด์กฐ๊ฑด DB์๋ค๊ฐ๋ง ํ๋๊ฑฐ์.
๋ด๊ฐ ์๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ค๊ณ ํด์, ์์ฃผ ์ธ๊ฑฐ๊ฐ์ผ๋๊น cache์ ์จ์ผ์ง~ ์ด๋ฐ๊ฑฐ ์๋๋ค๋๊ฑฐ์.
์ฐ๋๊ฑด ๋ฌด์กฐ๊ฑด DB์!
+์กฐํํ ๋๋ cache aside ์ ๋ต์จ์ ์กฐํํ๋๊ฑฐ์.
โก๏ธ ๋ฐ๋ผ์ Cache Aside์ ๋ต, Write Around ์ ๋ต์ ๋์ด ๊ฐ์ด ์ฐ์.
๊ทผ๋ฐ ๋น์ฐํ ๋จ์ ์กด์ฌํจ.
โ๏ธ๋จ์ ?
๋จ์ 1. DB๋ฐ์ดํฐ์ Cache๋ฐ์ดํฐ๊ฐ ๋ค๋ฅผ ์ ์์.
์ต์ด๋ก ๋ฐ์ดํฐ ์กฐํํ๋๋ฐ ์บ์์ ์์ -> Cache Miss ๋ฐ์
-> DB๊ฐ์ ๋ฐ์ดํฐ ๊ฐ์ ธ์ด
-> ์บ์ ์๋ฒ์ ์ฐ๊ธฐ.(ver1)
~~์๊ฐ์ด ํ๋ฅด๊ณ ๊ทธ ๋ฐ์ดํฐ ์์ ํ๊ฒ ๋จ(ver2)~~
๋น์ฐํ DB์๋ง ๋ฐ์๋จ
-> ๋ค์ ๊ทธ ๋ฐ์ดํฐ ์กฐํํ ์ผ์ด ์๊น
-> ์บ์ ๊ฐ์ ์กฐํ, ์์! (Cache Hit) ๊ทผ๋ฐ ver1.
-> ๊ทธ๊ฑฐ ๊ทธ๋๋ก ๊ฐ์ ธ์ค๋๊ฑฐ.
์ด๋ ๊ฒ ๋๋ฉด DB์๋ ver2๊ฐ, ์บ์์๋ ver1์ด ์ ์ฅ๋๊ฒ ๋จ.
๋ฐ์ดํฐ ์ผ๊ด์ฑ ์ ์ง๊ฐ ์๋๋ค๋ ๋จ์ .
๋จ์ 2. ์บ์ ์๋ฒ์ ์ฉ๋ ์ ํ์ด ์์.
redis๊ฐ์ ์บ์๋ RAM์ ์ฐ์ด๋ ์์๋ฐ์ดํฐ ์ ์ฅ์์.
RAM์ด ๋น ๋ฅธ๋งํผ.. ๊ฐ๊ฒฉ๋ ๋น์ธ๊ณ ์ฉ๋๋ ์ ์.
๋ฐ๋ผ์ ๋น์ฐํ ์บ์ ์๋ฒ๋ฅผ ๋ฌดํ๋๋ก ๋๊ณ ์ธ ์ ์์.
โก๏ธ ์ด ๋๊ฐ์ง๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ๋ฐฉ๋ฒ์ผ๋ก TTL์ด ์์!

์ด TTL์๋๊ณ ์
TTL์ ๋ฐ์ดํฐ์ ๋ง๋ฃ๊ธฐ๊ฐ์ ์ค์ ํ๋ ๊ธฐ๋ฅ์ด๋ค.
ttl์ ์ค์ ํจ์ผ๋ก์จ ๋ฐ์ดํฐ๋ ํน์ ์๊ฐ์ด ์ง๋๋ฉด ์บ์์์ ์ง์์ง.
๊ทธ๋ฌ๊ณ ์์ฃผ ์กฐํ๋๋๊ฑฐ๋ฉด ๊ณ์ ์บ์ ์๋ฒ์ ์๊ฒ ๋๋๊ฑฐ๊ณ ..
์์ฃผ ์กฐํ ์๋๋ฉด ์์ฐํ ์บ์ ์๋ฒ์์ ์ฌ๋ผ์ง๊ฒ ๋๋๊ฑฐ๋ค. (์๋กญ๊ฒ ์บ์์ ์์ฐ์ฌ์ง๋๊ฑฐ๋๊น)
์ด๋ ๊ฒ ๋๋ฉด, ๋จ์ 1๊ณผ ๋จ์ 2๊ฐ ๋ชจ๋ ์ปค๋ฒ ๊ฐ๋ฅํจ.
๋ง๋ฃ๊ธฐ๊ฐ์ด ๋ค ์ง๋๋ฉด ๋ฐ์ดํฐ๊ฐ ์ง์์ง๊ณ (ver1)
DB์์ ํด๋น ๋ฐ์ดํฐ๊ฐ ๋ฐ๋๊ณ ๋์(ver2)
๋ค์ ์กฐํํ์ ๋ ์บ์ ์๋ฒ์ ver2๋ก ์ฐ์ด๊ฒ ๋๋๊ฑฐ๋๊น...
๐๋ฐ์ดํฐ ์กฐํ ์ฑ๋ฅ์ ๋์ด๋ ๋ฐฉ๋ฒ๋ค
SQL๋ฌธ ํ๋
์บ์ ์๋ฒ ๋๊ธฐ
..
๋ฑ๋ฑ ๋ง์๋ฐ, ์ ์ผ ๋จผ์ ํด์ผํ ๊ฑด
SQL๋ฌธ ํ๋์ด๋ค.
๊ฐ์ฑ๋น ์๊ฒ ์ ์ผ ๋จผ์ ๊ณ ์ณ์ผ ํ๋ ๋ถ๋ถ์ด๋ค.
์บ์ ์๋ฒ๋ฅผ ๋๋๊ฒ๋ณด๋ค ๋จผ์ ๋ด์ผํ๋ ๋ถ๋ถ.
์ฌ์ค ์บ์ ์๋ฒ๋ฅผ ๋๋๊ฑด ๊ทธ์ ๋ฐ๋ผ ๋ ๋ค๋ฅธ ๋น์ฉ์ด ๋ฐ์ํ๋ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ด๋ค..
'Redis' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [Redis] redis ์บ์ ์๋ฒ ํ์ฉ ํ ์ฑ๋ฅ ๋น๊ต (feat.postman) (0) | 2025.11.28 |
|---|---|
| [Redis] Redis CacheAside ์ ๋ต ๊ฐ๋จํ ์ ์ฉํด๋ณด๊ธฐ @Cachable ์ด๋ ธํ ์ด์ (0) | 2025.11.28 |
| [Redis] ์์ฃผ ์ฐ๋ ๋ช ๋ น์ด ์ ๋ฆฌ + ๋ค์ด๋ฐ ์ปจ๋ฒค์ (0) | 2025.11.24 |
| [Redis] Windows์ Redis ์ค์นํ๊ธฐ (0) | 2025.11.24 |
| [Redis] MacOS์ Redis ์ค์นํ๊ธฐ (0) | 2025.11.24 |