๊ฐํธํ๊ณผ ์ถ์ โ ๋ฐฑ์๋ ์์ง๋์ด
"์ ์ด ๊ธฐ์ ์ธ๊ฐ"๋ฅผ ๋๊น์ง ํ๊ณ ๋๋ ์ต๊ด
์ฆ์ โ ์์ธ โ ํด๊ฒฐ์ ๋ฐ์ดํฐ ๊ธฐ๋ฐ ํธ๋ฌ๋ธ์ํ
๋น์ ๊ณต์์๊ธฐ์ ์คํ๋ ค ๊ธฐ์ ์ ๋ณธ์ง์ ๋๊น์ง ํ๊ณ ๋๋ ์ต๊ด์ด ์๊ฒผ์ต๋๋ค.
MSA ์ ํ ยท Kafka ๊ธฐ๋ฐ ๋ถ์ฐ ์ฒ๋ฆฌ ยท ์ฑ๋ฅ ๊ฐ์ ์ ํต์ฌ ์ญ๋์ผ๋ก ์ผ๊ณ ์์ต๋๋ค.
| ๋ฌธ์ | ํด๊ฒฐ | ๊ฐ์ ์จ |
|---|---|---|
| ๋ถ์ฐ ๋ฝ ๊ฒฝํฉ (Redisson โ Lua Script) | ์ต๋ ์๋ต ์ง์ฐ 10s โ 3s | ๐ 66.7%โ |
| ์ธ๋ถ API ์ง์ฐ (Redis ์ด์ค ์บ์ ์ ๋ต) | ์๋ต ์๋ 2,318ms โ 14ms | ๐ 99.4%โ |
| N+1 ์ฟผ๋ฆฌ (๋ฒํฌ ์กฐํ + HashMap ์บ์) | 5,000ms โ 30ms | ๐ 99.4%โ |
| Kafka Outbox ํจํด ๋์ | 6,500๋ช ๋์ ์์ฒญ ๋ฉ์์ง ๋ฌด์์ค ์ฒ๋ฆฌ | โ ์์์ฑ ๋ณด์ฅ |
| DB ๊ฒฐ์ ํ ์ด๋ธ ์ ๊ทํ (2๊ฐ โ 12๊ฐ) | ๊ด๋ฆฌ์ ์กฐํ 1,320ms โ 700ms | ๐ 47%โ |
| Token Diet ์คํ์์ค ๊ฐ๋ฐ | ํ๋กฌํํธ ํ ํฐ 25,000๊ฐ โ 5,000๊ฐ | ๐ 80%โ |
๐ซ Earlybird-Ticket โ ์ค์๊ฐ ์๋งค ์์คํ
BE 4๋ช | ํ ํฌ๋ฆฌ๋ ยท Java ยท SpringBoot ยท Kafka ยท Redis ยท MSA
- Outbox ํจํด ๋์ ์ผ๋ก Kafka ์ด์ค ์ฐ๊ธฐ ๋ฌธ์ ํด๊ฒฐ โ 6,500๋ช ๋์ ์์ฒญ ๋ฉ์์ง ๋ฌด์์ค
- Lua Script ๊ธฐ๋ฐ ๋ถ์ฐ ๋ฝ ์ฌ์ค๊ณ โ ์๋ต ์ง์ฐ 10s โ 3s (66.7% ๊ฐ์ )
- Prometheus + Grafana ๋ชจ๋ํฐ๋ง ๋์๋ณด๋ ๊ตฌ์ถ ๋ฐ ๋ณ๋ชฉ ํ์
๐ ํด๊ฒฐํ ๊ธฐ์ ๋ฌธ์ ๋ณด๊ธฐ
| ๋ฌธ์ | ์์ธ | ํด๊ฒฐ |
|---|---|---|
| Kafka ์์์ฑ ๊นจ์ง | ์ด์ค ์ฐ๊ธฐ ๋ฌธ์ | Outbox ํจํด + DLQ |
| Consumer Lag ์ง์ฐ | ํด๋ง ์ฃผ๊ธฐ / ํํฐ์ ๋ถ์กฑ | ํด๋ง 500ms + ํํฐ์ 30๊ฐ |
| ์ง๋ ฌํ ํ์ ๋ถ์ผ์น | ๋จ์ผ ํ์ ์ฒ๋ฆฌ ๊ตฌ์กฐ | Event Dispatcher ์ ๋ต ํจํด |
| ๋ถ์ฐ ๋ฝ ๊ฒฝํฉ | Redisson ์ค๋ฒํค๋ | Lua Script ์์์ ๋ช ๋ น |
๐ฆ Owl-Express โ B2B ๋ฌผ๋ฅ ๋ฐฐ์ก ์์คํ
BE 4๋ช | ํ ํฌ๋ฆฌ๋ ยท Java ยท SpringBoot ยท Spring Cloud ยท Redis ยท ELK
- ๋ค์ต์คํธ๋ผ ์๊ณ ๋ฆฌ์ฆ ์ง์ ๊ตฌํ โ ํ๋ธ-์คํฌํฌ ์ต๋จ ๊ฒฝ๋ก ๊ณ์ฐ
- Redis ์ด์ค ์บ์ (Write Through + Cache Aside) โ 2,318ms โ 14ms (99.4% ๊ฐ์ )
- N+1 ํด๊ฒฐ โ HashMap ์ธ๋ฉ๋ชจ๋ฆฌ ์บ์๋ก 5,000ms โ 30ms (99.4% ๊ฐ์ )
๐ง save-your-token โ Claude Code ํ ํฐ ์ ์ฝ ์คํ์์ค
1์ธ ๊ฐ๋ฐ ยท Python ยท Bash ยท JSONL
- Claude Code ์ธ์ JSONL ํ์ฑ โ ๋ช ๋ น์ด๋ณ ํ ํฐ ์ฌ์ฉ๋ ์ง๊ณ ๋ฐ ๋ถ๋ฅ
- 4๊ฐ์ง ํ ์๋ํ: ReadOnce(์ค๋ณต ์ฝ๊ธฐ ์ฐจ๋จ) ยท prompt-lint(๊ณ ๋น์ฉ ํจํด ๊ฐ์ง) ยท context-watch(์๊ณ๊ฐ ๊ฒฝ๊ณ ) ยท report-save(์ผ๋ณ ์ค๋ ์ท)
- ํ ํฐ ์๋ชจ 25,000๊ฐ โ 5,000๊ฐ (80% ์ ๊ฐ)
Loword 2025.11 ~ 2026.03 โ Node.js ยท NestJS ยท PostgreSQL ยท ECS/ECR
๊ฒฐ์ ์์คํ
์ค๊ณ ยท 8๋ง๊ฑด ๋ฐ์ดํฐ ๋ง์ด๊ทธ๋ ์ด์
ยท ํ
์ด๋ธ ์ ๊ทํ (2โ12๊ฐ)
The PAP (๋ฐ๋ก์ธํด 13๊ธฐ) 2025.06 ~ 2025.07 โ Kotlin ยท Spring Boot ยท ElasticSearch
๋ค์ด๋ฒ ์ํ์ฌ ยท MSA ์ฅ์ ์ ํ ๋ฐฉ์ง ยท ์ํท๋ธ๋ ์ด์ปค ๋์
| ์ฃผ์ | ๋งํฌ |
|---|---|
| ๋ฐ์ดํฐ ์ค์๊ฐ ๋๊ธฐํ & Feature Flag | ๐ ๋ณด๊ธฐ |
| ์ฌ๋ฆฌ๋ธ์ ์ ๊ท ์ฌ๊ณ ์์คํ ๊ฐ๋ฐ | ๐ ๋ณด๊ธฐ |
| Kafka์ ํ๊ณ์ Flink ํ์ฉ | ๐ ๋ณด๊ธฐ |
| Kafka ํํฐ์ ํ ๋น ์ ๋ต & MSK | ๐ ๋ณด๊ธฐ |
| Toss ์ฆ๊ถ Kafka ๋ฐ์ดํฐ์ผํฐ ์ด์คํ | ๐ ๋ณด๊ธฐ |



