--- id: SYS-ARCH-PAT-001 category: "10_Wiki/๐Ÿ’ก Topics/AI" confidence_score: 1.0 tags: [systems, [[Architecture|Architecture]], software-engineering, design-patterns, microservices, layered-architecture, event-driven, [[Scalability|Scalability]]] last_reinforced: 2026-04-26 --- # Software Architecture Patterns (์†Œํ”„ํŠธ์›จ์–ด ์•„ํ‚คํ…์ฒ˜ ํŒจํ„ด) ## ๐Ÿ“Œ ํ•œ ์ค„ ํ†ต์ฐฐ (The Karpathy Summary) > "์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๊ธฐ ์ „์— ์ง€์‹๊ณผ ๊ธฐ๋Šฅ์˜ '์ง€๋„(Map)'๋ฅผ ๋จผ์ € ๊ทธ๋ ค๋ผ. ์˜ฌ๋ฐ”๋ฅธ ํŒจํ„ด ์„ ํƒ์€ ๋ณต์žก์„ฑ์ด๋ผ๋Š” ํŒŒ๋„ ์•ž์—์„œ ์‹œ์Šคํ…œ์„ ์ง€ํƒฑํ•˜๋Š” ๊ฐ€์žฅ ๊ฒฌ๊ณ ํ•œ ๋‹ป์ด ๋œ๋‹ค" โ€” ์†Œํ”„ํŠธ์›จ์–ด ์‹œ์Šคํ…œ์˜ ๊ตฌ์กฐ์  ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋ฐ˜๋ณต์ ์œผ๋กœ ์‚ฌ์šฉ๋˜๋Š” ๊ฒ€์ฆ๋œ ์„ค๊ณ„ ์›์น™๊ณผ ๊ณจ๊ฒฉ. ## ๐Ÿ“– ๊ตฌ์กฐํ™”๋œ ์ง€์‹ (Synthesized Content) - **์ถ”์ถœ๋œ ํŒจํ„ด:** "[[_แ„‚แ…ฌแ„‹แ…ช แ„‘แ…กแ†ฏแ„ƒแ…กแ„…แ…ตแ„‹แ…ด แ„‡แ…ฎแ†ซแ„…แ…ต_ - แ„€แ…ชแ†ซแ„‰แ…ตแ†ทแ„‰แ…กแ„‹แ…ด แ„‡แ…ฎแ†ซแ„…แ…ต (Separation of Concerns)|Separation of Concerns]] and Structural [[Modularity|Modularity]]" โ€” ์‹œ์Šคํ…œ์˜ ์ฑ…์ž„์„ ๋ช…ํ™•ํžˆ ๋ถ„๋ฆฌํ•˜์—ฌ ๋ณ€๊ฒฝ์˜ ํŒŒ๊ธ‰ ํšจ๊ณผ๋ฅผ ์ตœ์†Œํ™”ํ•˜๊ณ , ํŠน์ • ์š”๊ตฌ์‚ฌํ•ญ(ํ™•์žฅ์„ฑ, ์„ฑ๋Šฅ, ๋ฐฐํฌ ์†๋„ ๋“ฑ)์— ์ตœ์ ํ™”๋œ ์ปดํฌ๋„ŒํŠธ ๊ฐ„ ๋ฐฐ์น˜ ๋ฐฉ์‹์„ ๊ฒฐ์ •ํ•˜๋Š” ํŒจํ„ด. - **์ฃผ์š” ์•„ํ‚คํ…์ฒ˜ ํŒจํ„ด:** - **Layered (N-tier):** ์—ญํ• ์„ ์ˆ˜ํ‰์œผ๋กœ ๋ถ„๋ฆฌ (UI-[[business|business]]-Data). ๊ฐ€์žฅ ๋ฒ”์šฉ์ ์ด๊ณ  ๋‹จ์ˆœํ•จ. - **Event-driven:** ๋น„๋™๊ธฐ ์ด๋ฒคํŠธ๋ฅผ ํ†ตํ•ด ํ†ต์‹ . ๋†’์€ ํ™•์žฅ์„ฑ๊ณผ ์œ ์—ฐ์„ฑ ์ œ๊ณต. - **Microservices:** ๋น„์ฆˆ๋‹ˆ์Šค ๋‹จ์œ„๋กœ ์„œ๋น„์Šค๋ฅผ ์™„์ „ํžˆ ์ชผ๊ฐœ์–ด ๋…๋ฆฝ์  ๋ฐฐํฌ์™€ ํ™•์žฅ์ด ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•จ. - **Microkernel (Plugin):** ํ•ต์‹ฌ ์ฝ”์–ด์— ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€/์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ๋Š” ํ”Œ๋Ÿฌ๊ทธ์ธ ๊ตฌ์กฐ. ํ™•์žฅ์„ฑ ์šฐ์ˆ˜. - **Hexagonal (Ports & Adapters):** ํ•ต์‹ฌ ๋กœ์ง์„ ์™ธ๋ถ€ ํ™˜๊ฒฝ(DB, UI ๋“ฑ)์œผ๋กœ๋ถ€ํ„ฐ ๊ณ ๋ฆฝ์‹œ์ผœ ํ…Œ์ŠคํŠธ ์šฉ์ด์„ฑ ๊ทน๋Œ€ํ™”. - **์˜์˜:** ๊ฐœ๋ฐœํŒ€์ด ๋™์ผํ•œ ์„ค๊ณ„ ์–ธ์–ด๋ฅผ ๊ณต์œ ํ•˜๊ฒŒ ํ•˜๋ฉฐ, ์ดˆ๊ธฐ ๊ฒฐ์ •์ด ํ–ฅํ›„ ์‹œ์Šคํ…œ์˜ ์ƒ์กด ์—ฌ๋ถ€์™€ ๋น„์šฉ์— ๊ฒฐ์ •์ ์ธ ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š” '์†Œํ”„ํŠธ์›จ์–ด์˜ ๋ผˆ๋Œ€' ๊ตฌ์ถ• ๊ณผ์ •. ## โš ๏ธ ๋ชจ์ˆœ ๋ฐ ์—…๋ฐ์ดํŠธ (Contradictions & RL Update) - **๊ณผ๊ฑฐ ๋ฐ์ดํ„ฐ์™€์˜ ์ถฉ๋Œ:** "๋ฌด์กฐ๊ฑด ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค๊ฐ€ ์ตœ๊ณ ๋‹ค"๋ผ๋Š” ์œ ํ–‰์—์„œ ๋ฒ—์–ด๋‚˜, ์‹œ์Šคํ…œ์˜ ๊ทœ๋ชจ์™€ ํŒ€์˜ ์—ญ๋Ÿ‰์— ๋งž์ถฐ ๋‹จ์ˆœํ•œ ๋ชจ๋†€๋ฆฌ์‹(Monolithic)์ด๋‚˜ ๋ชจ๋“ˆํ˜• ๋ชจ๋†€๋ฆฌ์‹(Modular Monolith)์ด ๋” ํšจ์œจ์ ์ผ ์ˆ˜ ์žˆ๋‹ค๋Š” ์‹ค์šฉ์ฃผ์˜์  ์ ‘๊ทผ์ด ๋‹ค์‹œ ๊ฐ•์กฐ๋˜๊ณ  ์žˆ์Œ. - **์ •์ฑ… ๋ณ€ํ™”:** Antigravity ํ”„๋กœ์ ํŠธ๋Š” ํ•ต์‹ฌ ์—์ด์ „ํŠธ ์—”์ง„์€ ๋งˆ์ดํฌ๋กœ์ปค๋„ ํŒจํ„ด์œผ๋กœ ์„ค๊ณ„ํ•˜์—ฌ ๊ธฐ๋Šฅ์„ ์œ ์—ฐํ•˜๊ฒŒ ํ™•์žฅํ•˜๊ณ , ์ „์ฒด ์„œ๋น„์Šค ๋ฐฐํฌ๋Š” ๋…๋ฆฝ์„ฑ์„ ์œ„ํ•ด ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์ง€ํ–ฅ์  ํŒจํ„ด์„ ์ค€์ˆ˜ํ•จ. ## ๐Ÿ”— ์ง€์‹ ์—ฐ๊ฒฐ (Graph) - [[Service-oriented-Architecture|Service-oriented-Architecture]], Microservices-Foundations, [[Scalability-in-AI-Systems|Scalability-in-AI-Systems]], API-Design-[[Principles|Principles]] - **Raw Source:** 10_Wiki/Topics/AI/Software-Architecture-Patterns.md