์ํํธ์จ์ด๊ณตํ ์ค๋ฌด ์ด๋ก
์ํคํ ์ฒ ํจํด/์คํ์ผ ์ ์ฉ
๊ณผ์ ๋ก ๋ ์ฑํฐ๋ฅผ ์ ๋ฆฌํ๋ ๋ด์ฉ์
๋๋ค.
์๊ณต์ด ์ฌ๋ฌ๊ฐ ์์ด์ ํด๊น๋ฆฐ๊ฑด๋ฐ ์ ๋ ์ ๋ชจ๋ฅด๊ฒ ์ด์ ใ
NCS ๊ตญ๊ฐ์ง๋ฌด๋ฅ๋ ฅํ์ค, NCS ๋ธ๋ผ์ธ๋์ฑ์ฉ
NCS ๋ฉ์ธ์์ ๊ตญ๊ฐ์ง๋ฌด๋ฅ๋ ฅํ์ค(National Competency Standards) ๋ฐ ๋ธ๋ผ์ธ๋ ์ฑ์ฉ์ ๋ํ ๋ค์ํ ์ ๋ณด์ ์ ์ฉํ ์ปจํ ์ธ ๋ฅผ ๋ง๋ ๋ณด์ธ์
www.ncs.go.kr
ํด๋น ์๋ฃ๋ ์์ ๋งํฌ์์ ์ฐพ์ผ์๋ฉด ๋ฉ๋๋ค.(LM2001020103_14v2)
์ฃผ์ ์ํคํ ์ฒ ํจํด๋ณ ์ ์ฉ๋ฐฉ๋ฒ
Layer pattern
๊ฐ์ฅ ์ผ๋ฐ์ ์ธ ๋ฐฉ์์ผ๋ก ์ฌ์ฉํ๋ ์ํคํ
์ฒ ํจํด์ผ๋ก
subtask๋ค์ ๊ทธ๋ฃน์ผ๋ก ๋ฌถ์ด ์ฌ์ฉ ํ๊ฐ ๊ด๊ณ๋ฅผ ํ์ํ๋ ํจํด
๋ชจ๋์ ์ฌ์ฌ์ฉ์ฑ์ ๋์ฌ ์ ์ง๋ณด์์ฑ์ด๋ ์ด์์ฑ์ด ์ข์ ํจํด
์ด๋ฌํ ์ ํ์ ๊ตฌ์ฑ ์์ ๋ถ๋ฅ๋ฅผ ํตํด ์ํคํ
์ฒ์ ํจ๊ณผ์ ์ธ ์ญํ ๋ฐ ์ฑ
์ ๋ชจ๋ธ์ ์ฝ๊ฒ ๊ตฌ์ถํ ์ ์์ผ๋ฉฐ
์ ์ ์๋ ๊ตฌ์ฑ ์์ ์ธํฐํ์ด์ค์ ์ ํ๋ ๊ตฌ์ฑ ์์ ๋ฒ์๋ก ์ธํด ์ด ์ํคํ
์ฒ ํจํด์ ์ฌ์ฉํ์ฌ
์ ํ๋ฆฌ์ผ์ด์
์ ์ฝ๊ฒ ๊ฐ๋ฐ, ํ
์คํธ, ๊ด๋ฆฌ ๋ฐ ์ ์ง ๊ด๋ฆฌํ ์ ์์ต๋๋ค.
์ฅ๋จ์
- ๋์ ์์ง๋(High Cohesion)
๊ฐ ๊ณ์ธต์ ํน์ ํ ์ญํ ์ ์ํํ๋ฏ๋ก, ๊ด๋ จ๋ ๊ธฐ๋ฅ์ด ํ๋์ ๊ณ์ธต์ ์ง์ค๋์ด ๋์ ์์ง๋๋ฅผ ๊ฐ์ง ์ ์์ต๋๋ค. ์ด๋ ์ฝ๋์ ๊ฐ๋ ์ฑ๊ณผ ์ ์ง๋ณด์์ฑ์ ํฅ์์ํต๋๋ค.
- ๋ฎ์ ๊ฒฐํฉ๋(Low Coupling)
๊ฐ ๊ณ์ธต์ ์๋ก์๊ฒ ์์กด์ฑ์ด ์๋ ๊ด๊ณ๋ก ๊ตฌ์ฑ๋์ด ์์ง๋ง, ๊ณ์ธต ๊ฐ์ ๊ฒฐํฉ๋๋ ๋ฎ๊ฒ ์ ์ง๋ฉ๋๋ค. ๋ฐ๋ผ์ ํ ๊ณ์ธต์ ๋ณ๊ฒฝ์ด ๋ค๋ฅธ ๊ณ์ธต์ ๋ฏธ์น๋ ์ํฅ์ด ์ต์ํ๋์ด, ์์คํ ์ ํ์ฅ์ฑ๊ณผ ์ ์ฐ์ฑ์ด ํฅ์๋ฉ๋๋ค.
- ์ฌ์ฌ์ฉ์ฑ(Reusability)
๊ฐ ๊ณ์ธต์ ๋ ๋ฆฝ์ ์ผ๋ก ์ฌ์ฉ๋ ์ ์์ด, ์ฌ์ฌ์ฉ์ฑ์ด ๋์์ง๋๋ค. ํน์ ๊ณ์ธต์ ๋ณ๊ฒฝ์ด ๋ค๋ฅธ ๋ถ๋ถ์ ์ํฅ์ ๋ฏธ์น์ง ์๊ธฐ ๋๋ฌธ์, ๊ณ์ธต์ ์ฌ์ฌ์ฉํ์ฌ ๋ค์ํ ์ํํธ์จ์ด์์ ํ์ฉํ ์ ์์ต๋๋ค.
- ๋ถํ์ํ ๊ณ์ธต ์ถ๊ฐ ๊ฐ๋ฅ์ฑ
๊ณ์ธต์ ๋ ์ธ๋ถํํ์ฌ ๊ตฌํํ ๊ฒฝ์ฐ, ๋ถํ์ํ ๊ณ์ธต์ด ์ถ๊ฐ๋ ์ ์์ต๋๋ค. ์ด๋ ์ฝ๋์ ๋ณต์ก์ฑ ↑
- ์ค๋ฒํค๋
๊ณ์ธต์ด ์ถ๊ฐ๋ ์๋ก ๊ฐ ๊ณ์ธต ๊ฐ์ ๋ฐ์ดํฐ ๊ตํ๊ณผ ํจ์ ํธ์ถ ๋ฑ์ ์ค๋ฒํค๋๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค. ๋ฐ๋ผ์ ์ฑ๋ฅ์ ์ํฅ์ ๋ฏธ์น ์ ์์ต๋๋ค.
- ๋ณต์ก์ฑ
๊ณ์ธต ๊ฐ์ ์์กด์ฑ๊ณผ ์ธํฐํ์ด์ค ๊ด๋ฆฌ ๋ฑ, ๊ณ์ธต ํจํด ์์ฒด๊ฐ ๋ณต์ก์ฑ์ ์ฆ๊ฐ์ํฌ ์ ์์ต๋๋ค. ๋ฐ๋ผ์ ์ ์ ํ ๊ณ์ธต ๊ตฌ์กฐ๋ฅผ ์ค๊ณํ๊ณ ๊ด๋ฆฌ๊ฐ ํ์ํฉ๋๋ค.
๋๋ต์ ์ธ ๊ฐ๋จ ๋ช ๋ฃ ์ ๋ฆฌ๋ฅผ ์ฌ๊ธฐ๊น์ง์ด๋ฉฐ, ๋์ฑ ์์ธํ ๋ด์ฉ์ ์๋ ๋งํฌ์ ์์ต๋๋ค.
Software Architecture Patterns
Chapter 1. Layered Architecture The most common architecture pattern is the layered architecture pattern, otherwise known as the n-tier architecture pattern. This pattern is the de facto standard for most … - Selection from Software Architecture Pattern
www.oreilly.com
The Layered Architecture Pattern in Software Architecture
This article aims to discuss some main concepts and characteristics of layered architecture pattern in software engineering.
medium.com
Broker pattern
์ธ๋ถ ์ปดํฌ๋ํธ ํธ์ถํ ๋ → ํด๋ผ ์์ฒญ → ์๋ฒ ์ปดํฌ์ ์ ๋ฌ
ํด๋น ๊ฒฐ๊ณผ๋ฅผ ์ ๋ฌํ๋ ์ญํ (์ผ์ข
์ ๋ธ๋ก์ปค ํจํด)
๋ณด์์ด๋, ์์ ์ฑ์ ๋์ผ ์ ์๋ ํจํด
๋ค์ํ ์ปดํฌ๋ํธ ๊ฐ์ ์ํธ์์ฉ์ ์กฐ์ ํ๋ ์ค์ ์ง์คํ์ ์ค๊ฐ์ ์ญํ ๋ก์จ,
๋ธ๋ก์ปค๋ ๋ค์ํ ์ปดํฌ๋ํธ ๊ฐ์ ํต์ ์ ๊ด๋ฆฌํ๋ฉฐ, ํด๋ผ์ด์ธํธ์ ์๋ฒ, ํน์ ์๋น์ค ์ ๊ณต์์
์ฌ์ฉ์์ ๊ฐ์ ๋ค์ํ ์ปดํฌ๋ํธ ๊ฐ์ ํต์ ์ ์ค์ฌํ์ฌ ์๋ก๊ฐ์ ๊ฒฐํฉ๋๋ฅผ ๋ฎ์ถ๊ณ ์ ์ฐ์ฑ ↑
broker arch pattern์ ๋ํ์ฌ ์์๋ ๊ฒ
๋ธ๋ก์ปค(Broker):
- ๋ค์ํ ์ปดํฌ๋ํธ ๊ฐ์ ์ํธ์์ฉ์ ์ค์ฌํ๊ณ ๊ด๋ฆฌํ๋ ์ค์ ์ง์คํ์ ์ปดํฌ๋ํธ
- ํด๋ผ์ด์ธํธ์ ์๋ฒ ๊ฐ์ ํต์ ์ด๋ ์๋น์ค ์ ๊ณต์์ ์ฌ์ฉ์ ๊ฐ์ ํต์ ์ ์กฐ์
ํด๋ผ์ด์ธํธ(Client):
- ๋ธ๋ก์ปค์ ์ํธ์์ฉํ๋ฉฐ ์๋น์ค๋ ๊ธฐ๋ฅ์ ์์ฒญํ๋ ์ปดํฌ๋ํธ
์๋ฒ(Server):
- ๋ธ๋ก์ปค์ ์ํธ์์ฉํด ํด๋ผ์ ์์ฒญ์ ์ฒ๋ฆฌํ๊ณ ์๋น์ค/๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ์ปดํฌ๋ํธ
์๋น์ค ์ ๊ณต์(Service Provider):
- ๋ธ๋ก์ปค์ ๋ฑ๋ก๋์ด ์๋น์ค๋ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ์ปดํฌ๋ํธ
์ฌ์ฉ์(User):
- ๋ธ๋ก์ปค๋ฅผ ํตํด ์๋น์ค๋ ๊ธฐ๋ฅ์ ์ฌ์ฉํ๋ ์ปดํฌ๋ํธ
์ปดํฌ๋ํธ - ํด์๋ท
์ปดํฌ๋ํธ(component)๋ ์ฌ๋ฌ ๊ฐ์ ํ๋ก๊ทธ๋จ ํจ์๋ค์ ๋ชจ์ ํ๋์ ํน์ ํ ๊ธฐ๋ฅ์ ์ํํ ์ ์๋๋ก ๊ตฌ์ฑํ ์์ ๊ธฐ๋ฅ์ ๋จ์๋ฅผ ๋งํ๋ค. ์ปดํฌ๋ํธ๋ฅผ ์ด์ฉํ๋ฉด ์ํํธ์จ์ด ๊ฐ๋ฐ์ ๋ง์น ๋ ๊ณ (Lego) ๋ธ
wiki.hash.kr
์ฅ๋จ์
- ์ค์ฌ(Mediation)
๋ธ๋ก์ปค๋ ํด๋ผ์ด์ธํธ์ ์๋ฒ ๊ฐ์ ํต์ ์ ์ค์ฌํ์ฌ, ํด๋ผ์ด์ธํธ์ ์๋ฒ ๊ฐ์ ์ง์ ์ ์ธ ์์กด์ฑ์ ์ค์ผ ์ ์์ต๋๋ค. ์ด๋ก์จ ์์คํ ์ ์ ์ฐ์ฑ๊ณผ ํ์ฅ์ฑ์ ํฅ์์ํฌ ์ ์์ต๋๋ค.
- ์ธํฐํ์ด์ค ์ถ์ํ
๋ธ๋ก์ปค๋ ํด๋ผ์ด์ธํธ์ ์๋ฒ ๊ฐ์ ์ธํฐํ์ด์ค๋ฅผ ์ถ์ํํ๊ณ , ์๋ก ๋ค๋ฅธ ์์คํ ๊ฐ์ ํต์ ์ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค. ์ด๋ ์์คํ ์ ํธํ์ฑ๊ณผ ์ํธ์ด์ฉ์ฑ์ ๋์ฌ์ค๋๋ค.
- ์ค๋ณต ์ ๊ฑฐ
๋ธ๋ก์ปค๋ ๊ณตํต์ ์ธ ๊ธฐ๋ฅ์ ์ค๋ณต์ผ๋ก ๊ตฌํํ๋ ๊ฒ์ ๋ฐฉ์งํ์ฌ ์ฝ๋์ ์ค๋ณต์ ์ ๊ฑฐํ ์ ์์ต๋๋ค. ์ด๋ ์ฝ๋์ ์ ์ง๋ณด์์ฑ์ ํฅ์์ํต๋๋ค.
- ๋จ์ผ ์ฅ์ ์ง์ (Single Point of Failure)
๋ธ๋ก์ปค๊ฐ ์์คํ ์ ์ค์ฌ์ ์ธ ์ญํ ์ ์ํํ๋ฏ๋ก, ๋ธ๋ก์ปค์ ์ฅ์ ๊ฐ ์์คํ ์ ์ฒด์ ์ํฅ์ ์ค ์ ์์ต๋๋ค. ๋ฐ๋ผ์ ๋ธ๋ก์ปค์ ์์ ์ฑ๊ณผ ๊ฐ์ฉ์ฑ์ ๊ณ ๋ คํด์ผ ํฉ๋๋ค.
- ์ฑ๋ฅ ์ ํ
๋ธ๋ก์ปค๋ ํด๋ผ์ด์ธํธ์ ์๋ฒ ๊ฐ์ ์ค์ฌ๋ฅผ ์ํํ๋ฏ๋ก, ์ถ๊ฐ์ ์ธ ์ค๋ฒํค๋๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค. ์ด๋ ์์คํ ์ ์ฑ๋ฅ์ ์ํฅ์ ๋ฏธ์น ์ ์์ต๋๋ค.
- ๋ณต์ก์ฑ
๋ธ๋ก์ปค ํจํด์ ํด๋ผ์ด์ธํธ์ ์๋ฒ ๊ฐ์ ์ค์ฌ๋ฅผ ์ํํ๊ธฐ ์ํด ๋ณ๋์ ๋ธ๋ก์ปค ์ปดํฌ๋ํธ๋ฅผ ๋์ ํ๋ฏ๋ก, ์์คํ ์ ๋ณต์ก์ฑ์ ์ฆ๊ฐ์ํฌ ์ ์์ต๋๋ค. ๋ฐ๋ผ์ ์ ์ ํ ์ค๊ณ์ ๊ตฌํ์ด ํ์ํฉ๋๋ค.
์ฆ, ์ค์ฌ์ ์ธํฐํ์ด์ค ์ถ์ํ๋ฅผ ํตํด ์์คํ ์ ์ ์ฐ์ฑ๊ณผ ํ์ฅ์ฑ์ ํฅ์์ํค์ง๋ง, ๋จ์ผ ์ฅ์ ์ง์ ๊ณผ ์ฑ๋ฅ ์ ํ, ๋ณต์ก์ฑ ๋ฑ์ ๋จ์ ์ด ์์
๋๋ต์ ์ธ ๊ฐ๋จ ๋ช ๋ฃ ์ ๋ฆฌ๋ฅผ ์ฌ๊ธฐ๊น์ง์ด๋ฉฐ, ๋์ฑ ์์ธํ ๋ด์ฉ์ ์๋ ๋งํฌ์ ์์ต๋๋ค.
Architectural Patterns: Broker
In most cases, client-side proxies translate the object model specified as part of the Broker architectural pattern to the object model of the programming language used to implement the client After getting the ack from the broker, the server enters its ma
www.openloop.com
MVC pattern
๋ชจ๋ธ, ๋ทฐ, ์ปจํธ๋กค ์ธ ๊ฐ์ ์ปดํฌ๋ํธ๋ก App์ ๊ตฌ๋ถํ ํจํด์ผ๋ก,
- Model : ๊ธฐ๋ฅ ๋ฐ์ดํฐ
- View : UI/UX
- Control : ๊ด๊ณ → ์ด๋ฒคํธ
๊ฐ ๊ด๊ณ์ ์ผ๊ด์ฑ์ ๊ฐ๊ฒ ํ์ฌ ๋ณ๊ฒฝ์ฉ์ด์ฑ, ๊ธฐ๋ฅ ํ์ฅ์ฑ ์ง์ํจ
MVC ํจํด์ ๊ฐ๊ฐ์ ์ญํ ์ด ๋ถ๋ฆฌ๋์ด ์๊ธฐ ๋๋ฌธ์, ์ฝ๋์ ์ฌ์ฌ์ฉ์ฑ, ์ ์ง๋ณด์์ฑ, ํ์ฅ์ฑ์ด ๋์ผ๋ฉฐ
๋ํ, ์ฌ์ฉ์ ์ธํฐํ์ด์ค(UI)์ ๋น์ฆ๋์ค ๋ก์ง์ด ๋ถ๋ฆฌ๋์ด ๊ฐ๋ฐ์ ๋ ๊ตฌ์กฐํํ ์ ์์ต๋๋ค.
์ฅ๋จ์
- ์ฝ๋์ ๋ถ๋ฆฌ
MVC ํจํด์ ๋ชจ๋ธ, ๋ทฐ, ์ปจํธ๋กค๋ฌ๋ฅผ ๊ฐ๊ฐ์ ์ญํ ๋ก ๋ถ๋ฆฌํ์ฌ ์ฝ๋๋ฅผ ๊ตฌ์ฑํ๋ฏ๋ก, ์ฝ๋์ ๋ถ๋ฆฌ๊ฐ ์ ์ด๋ฃจ์ด์ ธ์ ์ ์ง๋ณด์์ฑ ↑
- ํ์ฅ์ฑ
๊ฐ๊ฐ์ ์ญํ ์ด ๋ช ํํ๊ฒ ์ ์๋์ด ์๊ธฐ ๋๋ฌธ์, ์๋ก์ด ๊ธฐ๋ฅ์ ์ถ๊ฐํ๊ฑฐ๋ ๋ณ๊ฒฝํ ๋ ํด๋น ์ญํ ๋ง ์์ ํ๋ฉด ๋๋ฏ๋ก ํ์ฅ์ฑ good
- ์ ์ฐํ ์ฌ์ฉ์ ์ธํฐํ์ด์ค
๋ทฐ์ ์ปจํธ๋กค๋ฌ๊ฐ ๋ถ๋ฆฌ๋์ด ์๊ธฐ ๋๋ฌธ์, ๋ค์ํ ์ข ๋ฅ์ ์ฌ์ฉ์ ์ธํฐํ์ด์ค(UI)๋ฅผ ๊ตฌํํ๋๋ฐ ์ ์ฐ์ฑ์ด ์์ต๋๋ค.
- ๋ณต์ก์ฑ
MVC ํจํด์ ์ธ ๊ฐ์ง ์ญํ ์ด ๋ถ๋ฆฌ๋์ด ์๊ธฐ ๋๋ฌธ์, ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ตฌ์กฐ๊ฐ ๋ณต์กํด์ง ์ ์์ต๋๋ค.
- ํ์ต ๊ณก์
๊ฐ๋ ์ ์ผ๋ก ๋ณต์กํ๊ณ , ๊ฐ๊ฐ์ ์ญํ ์ด ์๋ก ์ํธ์์ฉํ๋ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง๊ณ ์์ด ์ฒ์ ์ ํ๋ ๊ฐ๋ฐ์๋ค์๊ฒ๋ ํ์ต ๊ณก์ ์ด ๋์
- ์ฝ๋ ์ค๋ณต
๋ชจ๋ธ, ๋ทฐ, ์ปจํธ๋กค๋ฌ ๊ฐ์ ์ํธ์์ฉ์ ์ํ ์ธํฐํ์ด์ค๋ ์ฝ๋๋ฅผ ์์ฑํด์ผ ํ ์ ์์ด ์ฝ๋ ์ค๋ณต์ด ๋ฐ์ํ ์ ์์ต๋๋ค.
๋๋ต์ ์ธ ๊ฐ๋จ ๋ช ๋ฃ ์ ๋ฆฌ๋ฅผ ์ฌ๊ธฐ๊น์ง์ด๋ฉฐ, ๋์ฑ ์์ธํ ๋ด์ฉ์ ์๋ ๋งํฌ์ ์์ต๋๋ค.
10 Common Software Architectural Patterns in a nutshell
Ever wondered how large enterprise scale systems are designed? Before major software development starts, we have to choose a suitable…
towardsdatascience.com
State-Logic-Display pattern
ํต์ 3-tier๋ฝ ๋ถ๋ฆฌ๋ฉฐ, ๋น์ง๋์ค App์์ ์ฃผ๋ก ์ฌ์ฉํฉ๋๋ค.
UI/๋น์ฆ๋์ค ๋ก์ง/๋ฐ์ดํฐ๋ฅผ ๊ตฌ๋ถ์ ๋ณ๊ฒฝ ์ฉ์ด์ฑ์ด ๋์ต๋๋ค
๊ฒ์, App ๋ฑ ๋ง์ ๋ถ์ผ์ ์ฌ์ฉ๋๋ ๋ชจ๋ธ
๊ฐ ๊ณ์ธต์ด ๋ ๋ฆฝ์ ์ผ๋ก ๋์ํ๋๋ก ์ค๊ณ๋ ๋์์ธ ํจํด, ์ฝ๋์ ๋ถ๋ฆฌ์ ํ์ฅ์ฑ ↑
์ฅ๋จ์
3-Tier ๋ชจ๋ธ์ ์ฝ๋์ ๋ถ๋ฆฌ์ ๊ฐ๋ฐ ํ๋ก์ธ์ค์ ํจ์จ์ฑ์ ๊ฐ์กฐํ๋ ์ฅ์ ์ด ์์ง๋ง, ๋ณต์ก์ฑ๊ณผ ์ค๋ฒํค๋, ์ฑ๋ฅ์ ๋ํ ๊ณ ๋ ค๊ฐ ํ์ํ ๋จ์ ์ด ์์ต๋๋ค. ๋ฐ๋ผ์, ํ๋ก์ ํธ์ ์๊ตฌ์ฌํญ๊ณผ ์ํฉ์ ๋ฐ๋ผ ์ฅ๋จ์ ์ ๊ณ ๋ คํ์ฌ ์ ์ ํ๊ฒ ์ ํ ๋ฐ ์ ์ฉํฉ๋๋ค.
๋๋ต์ ์ธ ๊ฐ๋จ ๋ช ๋ฃ ์ ๋ฆฌ๋ฅผ ์ฌ๊ธฐ๊น์ง์ด๋ฉฐ, ๋์ฑ ์์ธํ ๋ด์ฉ์ ์๋ ๋งํฌ์ ์์ต๋๋ค.
Sense-Compute-Control pattern
์ผ์์ ๊ฐ์ ๊ณ์ฐํ์ฌ ํด์ผํ ํ์๋ฅผ ์ ์ํ ๊ธฐ๋ฅ์ด๋
ํ์๋ฅผ ์ ๋ฌํ๋ ์ปจํธ๋กค๋ฌ๋ก ๋ชจ๋์ ๊ตฌ๋ถํ๋ ํจํด์
๋
์๋ฒ ๋๋ App์ ๊ฐ๋ฐํ ๋ ์ฃผ๋ก ์ฌ์ฉํ๋ ํจํด์
์ผ์์ ๋ฐ์ดํฐ ์ฒ๋ฆฌ, ์์คํ
์ ์ด๋ฅผ ๋ถ๋ฆฌํด ๊ฐ ๊ณ์ธต์ด ๋
๋ฆฝ์ ์ผ๋ก ๋์, ๋์ ํ์ฅ์ฑ๊ณผ ์ ์ฐ์ฑ ↑,
์ ๊ณต ์ผ์์ ๋ฐ์ดํฐ ์ฒ๋ฆฌ, ์์คํ
์ ์ด์ ๊ฐ๊ฐ์ ๊ณ์ธต์ด ํ์ฅ, ์์ , ๊ต์ฒด๊ฐ ๊ฐ๋ฅํ๋ฉฐ,
์๋ก ๋
๋ฆฝ์ ์ผ๋ก ๊ฐ๋ฐ, ํ
์คํธ, ๋ฐฐํฌ๊ฐ ๊ฐ๋ฅํ๋ค๋ ์ฅ์ ์ด ์์ต๋๋ค.
์ผ์์ ๋ฐ์ดํฐ ์ฒ๋ฆฌ, ์์คํ ์ ์ด์ ๋ถ๋ฆฌ๋ก ์ธํด ์์คํ ์ ์ฒด์ ๋ณต์ก์ฑ์ด ๊ฐ์ํ๊ณ , ์ฌ์ฌ์ฉ์ฑ์ด ํฅ์๋ฉ๋๋ค.
๋งก์ ์ฃผ์ - ์ํคํ ์ฒ ์ค๊ฑฐ์ฑ ํ๋ณด ๋ฐ ํฉ์
- ์ํคํ
์ฒ์ ๊ฒฌ๊ณ ์ฑ(Resilience)
์์คํ ์ด ์์์น ๋ชปํ ์ํฉ์์๋ ์ ์์ ์ผ๋ก ๋์ํ๊ณ , ์ค๋จ์ ์ต์ํํ๋ฉฐ, ์ฅ์ ๋ฅผ ๋ณต๊ตฌํ ์ ์๋ ๋ฅ๋ ฅ - ์ํคํ
์ฒ์ ํฉ์(Consensus)
์์คํ ์ ๋ค์ํ ๊ตฌ์ฑ ์์๊ฐ ๋์ผํ ์ํ๋ ๊ฒฐ์ ์ ๊ณต์ ํ๊ณ , ๋๊ธฐํํ์ฌ ์ผ๊ด์ฑ์ ์ ์งํ๋ ๊ฒ์ ์๋ฏธ
์ํคํ
์ฒ์ ๊ฒฌ๊ณ ์ฑ ํ๋ณด์ ํฉ์๋ ๋ถ์ฐ ์์คํ
์์ ์ค์ํ ์์๋ก,
์์ ์ฑ๊ณผ ๊ฐ์ฉ์ฑ์ ๋์ด๊ณ , ์์คํ
์ ์ ๋ขฐ์ฑ์ ํ๋ณดํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
์ํคํ ์ฒ์ ๊ฒฌ๊ณ ์ฑ ํ๋ณด์ ํฉ์๋ ์์คํ ์ ์์ ์ฑ๊ณผ ์ ๋ขฐ์ฑ์ ๋์ด๋ ๋ฐ ๊ธฐ์ฌํ๋ฉฐ, ์ฅ์ ๋ ์ด์ ์ํฉ์์์ ๋ณต๊ตฌ์ ์ผ๊ด์ฑ ์ ์ง๋ฅผ ๋ณด์ฅํ์ฌ ์์คํ ์ ์ ์์ ์ธ ๋์์ ์ง์ํฉ๋๋ค. ํ์ง๋ง, ์ด๋ฅผ ์ํ ์ถ๊ฐ์ ์ธ ๊ตฌํ ๋น์ฉ๊ณผ ๋ณต์ก์ฑ์ ๊ณ ๋ คํ์ฌ ํ๋ก์ ํธ์ ์๊ตฌ์ฌํญ๊ณผ ์ํฉ์ ๋ง๊ฒ ์ ์ ํ๊ฒ ์ฌ์ฉํด์ผํฉ๋๋ค.
๋ ์์ธํ ํ๊ณ ์ถ์๋ฐ ํ๊ณ ์ถ์ ๊ฒ๋ ๋ง์์ ๋์ด๊ฐ์ ๋ฐ๋ก ์ง๋ฌธ
๋ฉด์ ์์ ์ง๋ฌธ
Q: ์ํคํ ์ฒ์ ๊ฒฌ๊ณ ์ฑ ํ๋ณด์ ํฉ์์ ๋ํด ์ค๋ช ํด์ฃผ์ธ์.
A: ์ํคํ ์ฒ์ ๊ฒฌ๊ณ ์ฑ ํ๋ณด๋ ์์คํ ์ด ์์์น ๋ชปํ ์ํฉ์์๋ ์ ์์ ์ผ๋ก ๋์ํ๊ณ , ์ฅ์ ๋ฅผ ๋ณต๊ตฌํ ์ ์๋ ๋ฅ๋ ฅ์ ๊ฐ์ถ๋ ๊ฒ์ ๋งํฉ๋๋ค. ์ด๋ฅผ ์ํด ์ฅ์ ์์ธก๊ณผ ๋์์ ์ํ ๋ณต๊ตฌ ๋ฉ์ปค๋์ฆ, ๋ฐ์ดํฐ์ ๋ฐฑ์ ๊ณผ ๋ณต์ , ๊ณ ๊ฐ์ฉ์ฑ์ ์ํ ๋ถ์ฐ ๋ฐ์ดํฐ ์ผํฐ์ ๋ก๋ ๋ฐธ๋ฐ์ฑ ๋ฑ์ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ๋ํ, ๋ชจ๋ํฐ๋ง๊ณผ ๊ฒฝ๊ณ ์์คํ ์ ํตํด ์ฅ์ ๋ฅผ ์ ์ํ๊ฒ ๊ฐ์งํ๊ณ ๋์ํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค.
Q: ์ํคํ ์ฒ์ ๊ฒฌ๊ณ ์ฑ ํ๋ณด์ ํฉ์๊ฐ ์ค์ํ ์ด์ ๋ ๋ฌด์์ธ๊ฐ์?
A: ์ํคํ ์ฒ์ ๊ฒฌ๊ณ ์ฑ ํ๋ณด์ ํฉ์๋ ์์คํ ์ ์์ ์ฑ๊ณผ ์ ๋ขฐ์ฑ์ ๋์ด๋ ๋ฐ ๊ธฐ์ฌํฉ๋๋ค. ์์์น ๋ชปํ ์ฅ์ ๋ ์ด์ ์ํฉ์์๋ ์์คํ ์ด ์ ์์ ์ผ๋ก ๋์ํ์ฌ ์๋น์ค์ ๊ฐ์ฉ์ฑ์ ์ ์งํ ์ ์๊ณ , ์ฅ์ ๋ฅผ ๋ณต๊ตฌํ์ฌ ์๋น์ค์ ์ค๋จ์ ์ต์ํํ ์ ์์ต๋๋ค. ๋ํ, ๋ค์ํ ๊ตฌ์ฑ ์์ ๊ฐ์ ์ผ๊ด์ฑ์ ์ ์งํ๊ณ , ๊ฒฐ์ ์ ๊ณต์ ํจ์ผ๋ก์จ ์์คํ ์ ์ผ๊ด์ฑ์ ๋ณด์ฅํ๊ณ , ๋ฐ์ดํฐ ์ผ๊ด์ฑ ๋ฌธ์ ๋ฅผ ๋ฐฉ์งํ ์ ์์ต๋๋ค.
์ฐธ๊ณ ์๋ฃ
O'Reilly Media - Technology and Business Training
Learning by doing is the best way to grasp new technologies With interactive learning, teams get hands-on experience with cloud platforms and tech like Kubernetes, Python, Docker, Java, and more—in safe live dev environments. So they’re more comfortabl
www.oreilly.com
์ฐธ๊ณ ์ด๋ฏธ์ง