์บ์
๋ ๋์ค์ ์์ฒญํ request์ ๋ํ response๋ฅผ ๋ฏธ๋ฆฌ ์ ์ฅํด๋๋ ๊ณณ์ผ๋ก DB๋๋ API๋ฅผ ์ฐธ์กฐํ์ง ์๊ณ ๋น ๋ฅธ ์๋ต์ด ๊ฐ๋ฅํ๊ฒ ํด์ค๋ค.
์บ์์ ๋ฑ์ฅ ๋ฐฐ๊ฒฝ
- โ80%์ ๊ฒฐ๊ณผ๋ 20%์ ์์ธ์ ์ํด ๋ฐ์ํ๋คโ๋ผ๋
ํ๋ ํ ๋ฒ์น
์ผ๋ก๋ถํฐ ์บ์๋ผ๋ ๊ฐ๋ ์ด ๋ฑ์ฅํ๋ค. โ ์๋น์ค์์ ์์ฃผ ์ฌ์ฉ๋๋ 20%์ ๋ฐ์ดํฐ๋ฅผ ์บ์์ ์ ์ฅํ๋ฏ๋ก์จ ์ ์ฒด์ ์ธ ํจ์จ์ ๋์ด์ฌ๋ฆด ์ ์๋ค. - ์ฌ์ฉ์๊ฐ ๋์ด๋ DB์ ์์ฒญ์ด ๋ชฐ๋ฆฌ๋ฉด์ ๋์คํฌ IO๊ฐ ์์ฃผ ๋ฐ์ํ๋ค. ์ด๋ ๊ฒฐ๊ตญ ์ฑ๋ฅ์ ๋จ์ด๋จ๋ฆฌ๊ธฐ ๋๋ฌธ์ DB Scaling Out, Scaling Up ๋๋ ์บ์๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ๊ฒํ ํด๋ด์ผ ํ๋ค.
์บ์ฑ ๊ณผ์
- ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์๊ฒ request๋ฅผ ๋ณด๋ธ๋ค
- ์๋ฒ๋ request์ ํด๋นํ๋ ๋ฐ์ดํฐ๊ฐ ์บ์์ ์กด์ฌํ๋์ง ํ์ธํ๋ค.
- ์กด์ฌํ๋ค๋ฉด(cache hit) ๋ฐ๋ก ์๋ตํ๋ค
- ์กด์ฌํ์ง ์๋ค๋ฉด(cache miss) DB๋ ์๋ฒ์์ ๋ฐ์ดํฐ๋ฅผ ์กฐํํ ๋ค ์๋ตํ๋ค
์บ์ ์ฌ์ฉ ๋ฐฉ์
Look Aside Cache(Lazy Loading)
โ ๋๋ถ๋ถ์ ์บ์๋ ์ด์ ๊ฐ์ ํ๋ก์ธ์ค๋ก ๊ตฌ์ฑ๋๋ค
- ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์๊ฒ request๋ฅผ ๋ณด๋ธ๋ค
- ์๋ฒ๋ ์บ์์ ๋ฐ์ดํฐ๊ฐ ์กด์ฌํ๋์ง ํ์ธํ๋ค
- ์บ์์ ๋ฐ์ดํฐ๊ฐ ์๋ค๋ฉด ํด๋น ๋ฐ์ดํฐ๋ฅผ ๋ฐํํ๋ค
- ์๋ค๋ฉด DB์์ ์กฐํํ ํ ๋ฐํํ๋ค.
Write Back
โ ์ฐ๊ธฐ ์์
์ด ๋ง์ ์๋น์ค(๋ฐฐ์น ์์
)์์ ์ฌ์ฉ๋๋ ๊ตฌ์กฐ์ด๋ค
- ์๋ฒ๋ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ์บ์์๋ง ์ ์ฅํ๋ค
- ์ผ์ ์ฃผ๊ธฐ๋ง๋ค ์บ์์ ์๋ ๋ฐ์ดํฐ๋ฅผ DB์ ์ ์ฅํ๋ค
- DB์ ์ ์ฅ๋ ๋ฐ์ดํฐ๋ฅผ ์บ์์์ ์ ๊ฑฐํ๋ค
์จ๋ผ์ธ ํ ์คํธ ์๋น์ค์์ ์ฌ๋ฌ ์ฌ์ฉ์๊ฐ โ์ ์ถโ ๋ฒํผ์ ๋๋ฅผ ๋, DB์ ๋ฐ๋ก insertํ๋ค๋ฉด ์์ฒญ์ด ๋ชฐ๋ ค DB ์๋ฒ๊ฐ ์ฃฝ์ ์ ์๋ค. ์ด ๊ฒฝ์ฐ Write Back ๊ธฐ๋ฒ์ ์ฌ์ฉํ์ฌ DB์ ์์ ํ๊ฒ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ์ ์๋ค
Memcached
๋ ์คํ ์์ค ๋ถ์ฐ ๋ฉ๋ชจ๋ฆฌ ์บ์ฑ ์์คํ
์ผ๋ก ์ฌ์ฉํ์ง ์๋ ์๋ฒ๋ฅผ ํ์ฉํ ๊ฒ์ด๋ค.
- consistent hash ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํ์ฌ ๋ฌผ๋ฆฌ์ ์ธ ๋ณ๋์ ์บ์ ์๋ฒ๋ฅผ ๋ก์ง์์ ํ๋์ ์๋ฒ๋ก ๊ฐ์ฃผํ์ฌ ์ฌ์ฉํ ์ ์๋๋ก ํ๋ค. โ ์ฌ๋ฌ ์๋ฒ์์ ํ๋์ ์บ์ ์๋ฒ์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅ, ์กฐํํ ์ ์๋ค.
- ์ค๋๋ ์ ์ฌ์ ์๋ฒ์ ์์ฌ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ์ฉํ๋ค.
Memcached์ ๋จ์
์ธ๋ฉ๋ชจ๋ฆฌ ์์คํ ์ด๊ธฐ ๋๋ฌธ์ ์บ์ ์๋ฒ๋ฅผ ์ฌ๋ถํ ํ ๊ฒฝ์ฐ ๋ฐ์ดํฐ๊ฐ ํ๋ฐ๋๋ค. ์ฆ, Memcached ์์คํ ์ ์๊ตฌ ์ ์ฅ ์์คํ ์ผ๋ก ํ์ฉํ๊ธฐ์ ์ ํฉํ์ง ์๋ค.
- ๋ฐ์ดํฐ๋ฅผ ์๊ตฌ์ ์ผ๋ก ์ ์ฅํ๋ ค๋ฉด ๋นํ๋ฐ์ฑ ์ ์ฅ์์ ์ ์ฅํด๋๊ณ , ์บ์ ์๋ฒ๋ฅผ ์ฌ๋ถํ ํ ๋ ๋ฐ์ดํฐ๋ฅผ ์บ์ ์๋ฒ๋ก ์ ์ฌํด์ผ ํ๋ค.
Redis(Remote Dictionary Server)
๋ ์ธ๋ถ์์ ์ฌ์ฉํ ์ ์๋ ์ธ๋ฉ๋ชจ๋ฆฌ NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค์ด๋ค.
- Redis๋ ๊ณ ์ฑ๋ฅ ํค-๊ฐ ์ ์ฅ์๋ก์ String, Bitmap, Hash, List, Set, Sorted Set ๋ฑ์ ๋ค์ํ ์๋ฃ ๊ตฌ์กฐ๋ฅผ ์ ์ฅํ ์ ์๋ NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค์ด๋ค.
Redis์์ ์ ์ฅํ๋ ๋ฐ์ดํฐ
- key-value ์์ ๋ฐ์ดํฐ๋ฅผ key๋ก ์กฐํํ ์ ์๊ธฐ ๋๋ฌธ์ ์กฐํ ์๋๊ฐ ๋งค์ฐ ๋น ๋ฅด๋ค โ O(1)
- ๋ฌธ์์ด๋ถํฐ JPEG ํ์ผ๊น์ง ๋ชจ๋ ์ด์ง ์ํ์ค๋ฅผ key๋ก ์ฌ์ฉํ ์ ์๋ค. key๋ ์ต๋ 521MB์ด๋ค.
์ธ๋ฉ๋ชจ๋ฆฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค?
disk๊ฐ ์๋๋ผ ๋ฉ๋ชจ๋ฆฌ์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ด๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ์ ์ฅํ ์ ์๋ ๋ฐ์ดํฐ์ ์์ด ์ ํ์ ์ด๋ค.
Redis์ ์ฉ๋
์กฐํ์ ์นด์ดํธ ํํ์ ๋ฐ์ดํฐ
: IO์์ ์ด ๋น๋ฒํ๊ฒ ๋ฐ์ํ์ฌ Redis๊ฐ ์๋ ๋ค๋ฅธ ์ ์ฅ๋ฐฉ์์ ์ฌ์ฉํ๋ฉด ๋นํจ์จ์ ์ธ ๊ฒฝ์ฐ์ Redis๋ฅผ ์ฌ์ฉํ๋ค์ฌ์ฉ์ ์ธ์ ๊ด๋ฆฌ
: ์ฌ์ฉ์์ ์ธ์ ์ ์ ์งํ๋ ค๋ ์ฉ๋๋ก ์ฌ์ฉ๋๋ค์ธ์ฆ ํ ํฐ ์ ์ฅ์ฉ
: Refresh Token ์ ์ฅ์ฉAPI ์์ฒญ ๊ฒฐ๊ณผ ์บ์ฑ์ฉ
Redis๋ ๋ฐ์ดํฐ์ ์์์ฑ์ ๋ณด์ฅํ๊ธฐ ์ํด ๋ฐ์ดํฐ๋ฅผ ๋์คํฌ์ ์ ์ฅํ ์ ์๋ค.
- Redis ์๋ฒ๊ฐ ์ฌ๋ถํ ๋์ด ๋ฐ์ดํฐ๊ฐ ํ๋ฐ๋์ด๋ ๋์คํฌ์ ์ ์ฅ๋ ๋ฐ์ดํฐ๋ฅผ ๋ก๋ํ๋ค
- ๋ค๋ง ๋ฐ์ดํฐ๋ฅผ ํญ์ ์ ํํ๊ฒ ์ ์ง๋์ง ์๋๋ค.
Redis์ ๋ฐ์ดํฐ๋ฅผ ๋์คํฌ์ ์ ์ฅํ๋ ๋ฐฉ์์ 2๊ฐ์ง๊ฐ ์กด์ฌํ๋ค. (์ฐธ๊ณ )
-
RDB(Snapshotting) ๋ฐฉ์
: ํ ์๊ฐ์ ๋ฉ๋ชจ๋ฆฌ ์ ๋ฐ์ดํฐ ์ ์ฒด๋ฅผ ๋ฐ์ด๋๋ฆฌ ํ์ผ(.rdb)๋ก ์ ์ฅํ๋ ๋ฐฉ์- ์ฅ์
- ๋ฉ๋ชจ๋ฆฌ์ ์ค๋ ์ท์ ํ์ผ๋ก ์ ์ฅํ๊ธฐ ๋๋ฌธ์ Redis ์๋ฒ๋ฅผ ์ฌ๋ถํ ํ ๊ฒฝ์ฐ ํด๋น ํ์ผ๋ง ๋ถ๋ฌ ์ค๋ฉด ๋๋ค
- ๋ฐ์ด๋๋ฆฌ ํ์ผ(.rdb)์ AOF ํ์ผ(ํ ์คํธ)๋ณด๋ค ์ฌ์ด์ฆ๊ฐ ์๊ธฐ ๋๋ฌธ์ ๋ก๋ฉ ์๋๊ฐ ๋น๊ต์ ๋น ๋ฅด๋ค
- ๋จ์
- ๋ฉ๋ชจ๋ฆฌ ์ค๋ ์ท์ ํ์ผ๋ก ์ถ์ถํ๋ ์๊ฐ์ด ์ค๋๊ฑธ๋ฆฐ๋ค. ์ถ์ถ ์ค๊ฐ์ ์ฅ์ ๊ฐ ๋ฐ์ํ๋ฉด ๋ง์ง๋ง ์ค๋ ์ท ์ดํ์ ๋ฐ์ดํฐ๋ฅผ ๋ชจ๋ ์์ ์ ์๋ค.
- ์ฅ์
-
AOF(Append On File) ๋ฐฉ์
: Redis์ ๋ชจ๋ write, update ์ฐ์ฐ ์์ฒด๋ฅผ log ํ์ผ(.aof)์ ๊ธฐ๋กํ๋ ๋ฐฉ์- ์ฅ์
- ๋ฐ์ดํฐ ์ ์ค์ด ๋ฐ์ํ์ง ์๋๋ค
- ๋จ์
- RDB ๋ฐฉ์์ ๋นํด ๋ ๋ง์ ๋์คํฌ ์ฉ๋์ ์ฐจ์งํ๋ค
- log ํ์ผ์ ๊ธฐ๋ก๋ ๋ชจ๋ ๋ช ๋ น์ด๋ฅผ ์คํ์ํค๊ธฐ ๋๋ฌธ์ ์ฌ๋ถํ ์ ์๋ต์๊ฐ์ด ์ค๋ ๊ฑธ๋ฆฐ๋ค.
์ค๋ ์ท๊ณผ AOF๋ฐฉ์์ ํผํฉํด ์ฌ์ฉํ๋ ๊ฒ์ด ๊ถ์ฅ๋๋ค.
- RDB โ ์ฃผ๊ธฐ์ ์ผ๋ก ๋ฉ๋ชจ๋ฆฌ ์ค๋ ์ท์ ์ฐ์ด .rdb ํ์ผ์ ์ ์ฅํ๋ค
- AOF โ ๋ค์ ์ค๋ ์ท๊น์ง์ log๋ฅผ AOF ๋ฐฉ์์ผ๋ก ์ ์ฅํ๋ค.
์๋ฒ ์ฌ๋ถํ ์ .rdb ํ์ผ์ ๋ถ๋ฌ์ค๊ณ ๋น๊ต์ ์ ์ ์์ AOF ๋ก๊ทธ๋ง ์ฌ์คํํด์ค๋ค
- ์ฅ์
Redis๋ ๋ค์ํ ์๋ฃ๊ตฌ์กฐ๋ฅผ ์ง์ํ์ฌ ๊ฐ๋ฐ ํธ์์ฑ์ ์ ๊ณตํ๋ค. ์ด ํน์ง์ ๋ค๋ฅธ ์ธ๋ฉ๋ชจ๋ฆฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํฐ ์ฐจ์ด์ ์ด๋ค.
- Redis์ Memcached์ ์ฐจ์ด์ : ์ง์ํ๋ ์๋ฃ๊ตฌ์กฐ์ ๋ค์์ฑ
Redis๋ disk์ ์ ๊ทผํ์ง ์๊ณ ๋ฉ๋ชจ๋ฆฌ์ ์ ๊ทผํ์ฌ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๊ธฐ ๋๋ฌธ์ ์๋๊ฐ ๋น ๋ฅด๋ค.
- Redis์ ์ฑ๋ฅ์ Memcached์ ๋ฒ๊ธ๊ฐ๋ฉด์๋ ๋ค์ํ ๋ฐ์ดํฐ ๊ตฌ์กฐ์ฒด๋ฅผ ์ง์ํ๊ธฐ ๋๋ฌธ์ DB, Cache, Message Queue, Shared Memory ์ฉ๋๋ก ์ฌ์ฉ๋ ์ ์๋ค.
Redis๋ ์ฑ๊ธ ์ค๋ ๋๋ฅผ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ์ฐ์ฐ์ ์์์ ์ผ๋ก ์ฒ๋ฆฌํ๋ค. ๋ค์ ๋งํด, Race Condition์ด ๊ฑฐ์ ๋ฐ์ํ์ง ์๋๋ค. (Thread Safeํ๋ค)
Redis์์ ์ ๊ณตํ๋ ์๋ฃ๊ตฌ์กฐ (์ฐธ๊ณ )
์ข ๋ฅ | ์ค๋ช |
---|---|
String | ๊ฐ์ฅ ์ผ๋ฐ์ ์ธ ํํ์ ์๋ฃ๊ตฌ์กฐ - key โ string - string ํ์ ์ ์ด์ง ๋ฐ์ดํฐ๋ฅผ ํฌํจํ ๋ชจ๋ ์ข ๋ฅ์ ๋ฌธ์์ด์ ์ ์ฅํ ์ ์๋ค. (JPEG, HTML) - ๋ ๋์ค์ ํค๊ฐ ๋ฌธ์์ด์ด๋ฏ๋ก ์ด ๊ตฌ์กฐ๋ ๋ฌธ์์ด์ ๋ค๋ฅธ ๋ฌธ์์ด์ ๋งคํํ๋ ๊ฒ |
List | LinkedList ํน์ง์ ๊ฐ์ง ์๋ฃ๊ตฌ์กฐ - key โ ์ฌ๋ฌ list ์์ - list ๋ด์ ์๋ฐฑ๋ง ๊ฐ์ ์์ดํ ์ด ์๋๋ผ๋ head์ tail์ ๊ฐ์ ์ถ๊ฐํ ๋ ๋์ผํ ์๊ฐ์ด ์์๋๋ค. - Pub-Sub ํจํด : ์์ฐ์๊ฐ ๋ฐ์ดํฐ๋ฅผ ๋ง๋ค์ด list์ ๋ฃ์ผ๋ฉด ์๋น์๊ฐ list์์ ๋ฐ์ดํฐ๋ฅผ ๊บผ๋ด ์ก์ ์ ์ํํ๋ค - ํธ์ํฐ์์๋ ๊ฐ ์ ์ ์ ํ์๋ผ์ธ์ ๋ณด์ฌ์ฃผ๊ธฐ ์ํด Redis์ list๋ฅผ ์ฌ์ฉํ๋ค |
Hash | field-value ์์ ์ผ๋ฐ์ ์ธ ํด์ ์๋ฃ๊ตฌ์กฐ - key โ ์ฌ๋ฌ fleld-value ์์ ๋ฐ์ดํฐ - key์ ๋ํ field ๊ฐ์์ ์ ํ์ด ์๋ค - RDB์ ํ ์ด๋ธ๊ณผ ๋น์ทํ๋ค (hash key๋ table์ PK, field๋ column, value๋ value) |
Set | set์ ์ ๋ ฌ๋์ง ์๊ณ ์ค๋ณต๋์ง ์๋ ๋ฌธ์์ด์ ๋ชจ์ - key โ ์์๊ฐ ์๊ณ ์ค๋ณต๋์ง ์๋ ์ฌ๋ฌ ๋ฐ์ดํฐ - ๊ฐ์ฒด ๊ฐ์ ๊ด๊ณ๋ฅผ ํํํ ๋ ์ข๋ค - ๊ต์งํฉ, ํฉ์งํฉ, ์ฐจ์งํฉ ์ฐ์ฐ์ ์ํํ ์ ์๋ค |
Sorted Set | ์ ๋ ฌ๋๊ณ ์ค๋ณต๋์ง ์๋ ๋ฌธ์์ด์ ๋ชจ์ - key โ ์ค๋ณต๋์ง ์๋ member-score ์์ ์ฌ๋ฌ ๋ฐ์ดํฐ - ์ ์ฅ๋๋ ๋ฐ์ดํฐ๋ score๋ฅผ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌ๋๋ค. (score๊ฐ์ด ๋์ผํ๋ค๋ฉด member์ ์ฌ์ ์์๋ก ์ ๋ ฌ) - ๋ฐ์ดํฐ๊ฐ ์ ๋ ฌ๋์ด์๊ธฐ ๋๋ฌธ์ ์ธ๋ฑ์ค๋ก ๋น ๋ฅธ ์กฐํ๊ฐ ๊ฐ๋ฅ |
Redis๋ ๋ฐ์ดํฐ๋ฅผ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅํ๊ธฐ ๋๋ฌธ์ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ๊ฐ ํ์ํ๋ค.
๋ฉ๋ชจ๋ฆฌ ํํธํ ๋ฌธ์
: ๋ค์ํ ์ฌ์ด์ฆ์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ธฐ ๋๋ฌธ์ ๋ฉ๋ชจ๋ฆฌ ํํธํ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์๋ค. โ ๊ฐ๊ธ์ ๋น์ทํ ์ฌ์ด์ฆ์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋๊ฒ ๋ฐ๋์งํ๋คswapping์ผ๋ก ์ธํ ์๋ ์ ํ
: ๊ฐ์ฉ ๋ฉ๋ชจ๋ฆฌ๋ณด๋ค ํฐ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ค๋ฉด swapping์ด ๋ฐ์ํ๋ค. ์ฌ์ด์ฆ๊ฐ ํฐ ๋ฐ์ดํฐ์ ์ ๊ทผํ๋ค๋ฉด page swap in, out์ด ๋ฐ์ํ์ฌ ๊ฒ์ ์๋์ ์ํฅ์ด ๋ฏธ์น๋ค.
Redis๋ ๋ฐ์ดํฐ๋ฅผ ๋ฉ๋ชจ๋ฆฌ๋ผ๋ ํ์ ์ ์ธ ๊ณต๊ฐ์ ์ ์ฅํ๋ค.
- ๋ฉ๋ชจ๋ฆฌ๊ฐ ๊ฐ๋์ฐฌ ๊ฒฝ์ฐ ๊ฐ์ฅ ๋จผ์ ๋ค์ด์จ ๋ฐ์ดํฐ๋ฅผ ์ญ์ ํ๊ฑฐ๋, ๊ฐ์ฅ ์ต๊ทผ์ ์ฌ์ฉ๋์ง ์๋ ๋ฐ์ดํฐ๋ฅผ ์ญ์ ํ๊ฑฐ๋, ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฅ๋ฐ์ง ๋ชปํ ์ ์๋ค.
- ์ ์ฅ ๊ณต๊ฐ์ด ๊ฐ๋์ฐฌ ๊ฒฝ์ฐ ์ฌ์ฉ์๊ฐ ์ง์ ์ญ์ ๋ ๋ฐ์ดํฐ ๊ธฐ์ค์ ์ค์ ํ๋๊ฒ ๋ฐ๋์งํ๋ค โ ๋ฐ์ดํฐ์ ์ฌ์ฉ ๊ธฐํ
Expire
๋ฅผ ์ค์ ํ์ฌ key์ ๋ํ timeout(๋ง๋ฃ ์๊ฐ)์ ์ง์ ํด์ค๋ค. ๋ง๋ฃ ์๊ฐ์ด ๊ฒฝ๊ณผํ๋ฉด key๊ฐ ์๋์ผ๋ก ์ญ์ ๋๋ค. - Expire๋ Collection์ item ๋ณ๋ก ์ค์ ํ ์ ์๊ณ Collection ์ ์ฒด์ ์ค์ ๋๋ค. โ Collection ๋ด๋ถ์ ๋ชจ๋ item์ด ์ญ์ ๋๋ค
Redis๋ ์ฑ๊ธ ์ค๋ ๋ ๋ฐฉ์์ผ๋ก ์ฐ์ฐ์ ์ํํ๋ค. ๋ฐ๋ผ์ ์์ฒญ ์ฒ๋ฆฌ ์๊ฐ์ด ์ค๋ ๊ฑธ๋ฆฌ๋ฉด ๋ค์ ์ค๋ ๋๋จธ์ง ์์ฒญ๋ค์ ๊ณ์ ๋๊ธฐํด์ผ ํ๋ค.
- ํ๋์ ์์ฒญ์ด 1์ด ์์๋๋ค๋ฉด ๋๋จธ์ง 9999๊ฐ์ ์์ฒญ์ ๋ชจ๋ 1์ด๋์ ๋๊ธฐํด์ผ ํ๋ค. ์ต์ ์ ๊ฒฝ์ฐ ๋ท๋จ์ ์์ฒญ์ TIME_OUT์ด ๋ฐ์ํ์ฌ ์๋น์ค๊ฐ ํฐ์ง ์ ์๋ค.
- ๋ฐ๋ผ์ ์ฒ๋ฆฌ ์๊ฐ์ด O(N)์ธ ๋ช ๋ น์ด๋ฅผ ํผํ๋๊ฒ ์ข๋ค. (KEYS, FLUSHALL, FLUSHDB, Delete Collection, Get All Collections)