diff --git a/docs/performance/Catalog_TO-BE_2.0_Redis_Cache_Performance_Report.md b/docs/performance/Catalog_TO-BE_2.0_Redis_Cache_Performance_Report.md
new file mode 100644
index 0000000..7b77c97
--- /dev/null
+++ b/docs/performance/Catalog_TO-BE_2.0_Redis_Cache_Performance_Report.md
@@ -0,0 +1,61 @@
+# ๐ [Catalog Service] Redis ์บ์ ๋์
์ ํตํ ์ฝ๊ธฐ(Read) ์ฑ๋ฅ ์ต์ ํ ๋ฆฌํฌํธ (2์ฐจ ๋ถํํ
์คํธ)
+
+๋ณธ ๋ฌธ์๋ AS-IS ์ํคํ
์ฒ์์ ๋ฐ์ํ๋ MongoDB Disk I/O ๋ณ๋ชฉ ํ์(153 TPS ํ๊ณ)์ ํด๊ฒฐํ๊ธฐ ์ํด **Redis ์ธ๋ฉ๋ชจ๋ฆฌ ์บ์ (Cache-Aside ํจํด)๋ฅผ** ๋์
ํ ํ, ์นดํ๋ก๊ทธ ์กฐํ
+์ฑ๋ฅ์ด ์ผ๋ง๋ ํฅ์๋์๋์ง ๊ฒ์ฆํ TO-BE ๋ฆฌํฌํธ์
๋๋ค.
+
+---
+
+## 1. ์บ์ ๋์
ํ ์ฝ๊ธฐ ์ฑ๋ฅ ์ธก์ ๋ฐ 'Cache Warming' ํจ๊ณผ ๋ถ์
+
+> **ํ
์คํธ ๋ชฉ์ :** ์นดํ๋ก๊ทธ ๋ฉ์ธ ํ๋ฉด ๋ฐ ๋จ๊ฑด ์กฐํ API์ Redis ์บ์(`@Cacheable`)๋ฅผ ์ ์ฉํ ํ, Disk I/O ํ๊ณ๋ฅผ ๋ํํ์ฌ ๋ชฉํ์น์ธ 200 TPS๋ฅผ ์์ ์ ์ผ๋ก ์ํํ๋์ง ๊ฒ์ฆํฉ๋๋ค.
+
+### ๐ ๋ถํํ
์คํธ ๊ฒฐ๊ณผ (JMeter)
+
+์ด๋ฒ ํ
์คํธ์์๋ ์บ์ ์ ์ค ์ํ์ ๋ฐ๋ผ ๋ช
ํํ ์ฑ๋ฅ ์ฐจ์ด๊ฐ ๋ํ๋๋ 'Cache Warming' ํ์์ด ๋๋ ทํ๊ฒ ๊ด์ธก๋์์ต๋๋ค.
+
+- **๋ถํ ๊ท๋ชจ:** 100 Threads ๋์ ์์ฒญ (์ด 1,000๊ฑด ์คํ์ดํฌ)
+- **1์ฐจ ํ๊ฒฉ ๊ฒฐ๊ณผ (Cold Cache / Partial Hit):**
+ - **์ฒ๋ฆฌ๋:** `์ฝ 394 TPS`
+ - ๋ถ์: Redis์ ๋ฐ์ดํฐ๊ฐ ์์ ํ ์ ์ฌ๋์ง ์์ ์ผ๋ถ ์์ฒญ์ด MongoDB๋ก ํ๋ฌ ๋ค์ด๊ฐ(Cache Miss) ์ํ์
๋๋ค. ๊ทธ๋ผ์๋ ๋ถ๊ตฌํ๊ณ ๊ธฐ์กด AS-IS(153 TPS) ๋๋น 2.5๋ฐฐ ์ด์์ ์ฑ๋ฅ์
+ ๊ธฐ๋กํ์ต๋๋ค.
+
+
+
+- **2์ฐจ ํ๊ฒฉ ๊ฒฐ๊ณผ (Warm Cache / Full Hit) - ์ต์ข
์งํ:**
+ - **์ฒ๋ฆฌ๋(Throughput):** `993.0 / sec` **(AS-IS ๋๋น ์ฝ 646% ์ฑ๋ฅ ํฅ์)**
+ - **ํ๊ท ์ง์ฐ ์๊ฐ(Average):** `25.8 ms` **(AS-IS ๋๋น ์ฝ 95% ์ง์ฐ ์๊ฐ ๋จ์ถ)**
+ - **์ต์ / ์ต๋ ์ง์ฐ ์๊ฐ:** `1 ms` / `170 ms`
+ - **์๋ฌ์จ(Error %):** `0.0%`
+
+
+
+### ๐ ์ฑ๋ฅ ์ต์ ํ ๋ฐ ์๋ฐ(Warming) ํจ๊ณผ ๋ถ์
+
+1์ฐจ ํ๊ฒฉ(394 TPS)์์ 2์ฐจ ํ๊ฒฉ(993 TPS)์ผ๋ก์ ์ฑ๋ฅ ์์น์ MSA ํ๊ฒฝ์์ **์บ์ ์๋ฐ(Cache Warming)** ์ ๋ต์ ํจ๊ณผ๋ฅผ ๋ฐ์ดํฐ๋ก ๋ณด์ฌ์ค๋๋ค. ๋ฐ์ดํฐ๊ฐ Redis ๋ฉ๋ชจ๋ฆฌ์ ์์ ํ ์บ์ฑ๋(
+Full Hit) 2์ฐจ ํ
์คํธ์์๋ MongoDB์ ๋ํ ์ถ๊ฐ I/O๊ฐ ๋ฐ์ํ์ง ์์, ํ๊ท ์๋ต ์๊ฐ์ด 25.8ms๋ฅผ ๊ธฐ๋กํ์ต๋๋ค. ์ด๋ ๋๊ท๋ชจ ํธ๋ํฝ์ด ์์๋๋ ์ด๋ฒคํธ(์ ์ฐฉ์ ์คํ ๋ฑ) ๋ฐ์ ์ง์ ์ ์ฃผ์ ๋ฐ์ดํฐ๋ฅผ
+๋ฉ๋ชจ๋ฆฌ์ ๋ฏธ๋ฆฌ ์ ์ฌํ๋ ์ ๋ต์ด ์๋น์ค ์์ ์ฑ์ ์ง๊ฒฐ๋จ์ ์์ฌํฉ๋๋ค.
+
+---
+
+## 2. ์ฑ๋ฅ ์งํ ๋น๊ต (AS-IS vs TO-BE)
+
+| ์งํ | AS-IS (MongoDB ์ง์ ์กฐํ) | TO-BE (Redis Cache Full Hit) | ๊ฐ์ ํจ๊ณผ (์ฆ๊ฐ๋ฅ ) |
+|:-----------------|:----------------------|:-----------------------------|:-------------------|
+| **Throughput** | 153.5 TPS | **993.0 TPS** | **`+ 646% ์์ง ์์น`** |
+| **Average Time** | 539 ms | **25.8 ms** | **`- 95.2% ๋จ์ถ`** |
+| **Max Time** | 2,153 ms | **170 ms** | **`- 92.1% ๋จ์ถ`** |
+| **Error Rate** | 0.0% | **0.0%** | ์ ์ง (์์ ์ฑ ๋ณด์ฅ) |
+
+---
+
+## 3. ์ข
ํฉ ๊ฒฐ๋ก ๋ฐ ๋ฐ์ดํฐ ์ ํฉ์ฑ ๋ฐฉ์ด ์ ๋ต (Cache Eviction)
+
+1. **์๋์ ์ธ ์ฝ๊ธฐ ์ฑ๋ฅ ํ๋ณด:** ์ธ๋ฉ๋ชจ๋ฆฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ธ Redis๋ฅผ ํ์ฉํ์ฌ ์นดํ๋ก๊ทธ์ ์ฝ๊ธฐ ๋ณ๋ชฉ์ ํด์ํ์ต๋๋ค. 993 TPS๋ผ๋ ์์น๋ ๋จ์ผ ์๋น์ค์ ์ฑ๋ฅ ํฅ์๋ฟ๋ง ์๋๋ผ, ์ด์ ๊ฐ์ ๋ฐฉ์์ผ๋ก
+ ๊ตฌ์ฑ๋ API๋ฅผ ๋๊ธฐ์ ์ผ๋ก
+ ํธ์ถํ๋ ์ค๋(Order) ์๋น์ค์ ๋ณ๋ชฉ๊น์ง ์ฐ์์ ์ผ๋ก ํด๊ฒฐํ๋ ํต์ฌ ํค๊ฐ ๋์์ต๋๋ค.
+2. **์ด๋ฒคํธ ๊ธฐ๋ฐ ์ ํฉ์ฑ(Consistency) ์ ์ง:** ์ฑ๋ฅ์ ์ํด ์บ์๋ฅผ ๋์
ํ ๋ ๊ฐ์ฅ ๊ฒฝ๊ณํด์ผ ํ ๋ฌธ์ ๋ ๊ณผ๊ฑฐ ๋ฐ์ดํฐ๊ฐ ๋
ธ์ถ๋๋ 'Stale Data' ํ์์
๋๋ค. ์ด๋ฅผ ๋ฐฉ์ดํ๊ธฐ ์ํด ์ ์ฃผ๊ฐ ์ํ ์ ๋ณด๋ฅผ
+ ์์ ํ๊ฑฐ๋(`product.updated`), ํ์ ์ฒ๋ฆฌ(`product.status-changed`)๋ฅผ ํ ๊ฒฝ์ฐ, **Kafka ์ด๋ฒคํธ๋ฅผ ์์ ํ์ฌ ์ฆ๊ฐ์ ์ผ๋ก ๋ค์ค ์บ์(๋ชฉ๋ก ์บ์, ๋จ๊ฑด ์บ์)๋ฅผ ๋ฌดํจํ(
+ `@CacheEvict`)ํ๋๋ก** ์ค๊ณํ์ต๋๋ค.
+
+๊ฒฐ๊ณผ์ ์ผ๋ก Miche-Let์ ์นดํ๋ก๊ทธ ์๋น์ค๋ 1,000 TPS์ ์ก๋ฐํ๋ ์ฒ๋ฆฌ ์ฑ๋ฅ์ ํ๋ณดํ์ผ๋ฉฐ, Kafka ์ด๋ฒคํธ ๊ธฐ๋ฐ ๋ฌดํจํ๋ก ๋ฐ์ดํฐ ์ ํฉ์ฑ ๋ฆฌ์คํฌ๋ฅผ ๋ฎ์ท์ต๋๋ค.
+์ ํฉ์ฑ์ ์ด์ ํ๊ฒฝ์์ ์ด๋ฒคํธ ์ง์ฐ/๋๋ฝ ๋ชจ๋ํฐ๋ง ์งํ์ ํจ๊ป ์ง์ ๊ฒ์ฆ์ด ํ์ํฉ๋๋ค.