#์ค๋ฆฌํ
#์ธ๊ณต์ง๋ฅ
#์ฒ ํ
์์จ์ฃผํ ์๊ณ ๋ฆฌ์ฆ์์ ๋ฐ์ํ ์ ์๋ ๋๋์ ์ ํ์ ์ด๋ก ์ ํ์ ๋ถ์ํฉ๋๋ค.
์์จ์ฃผํ์๋์ฐจ๊ฐ ์ฌ๊ณ ไธๅฏ้ฟๅ
์ํฉ์ ์ฒํ์ ๋, ์น๊ฐ์ ์๋ช
์ ๋ณดํธํ๊ธฐ ์ํด ๋ณดํ์๋ฅผ ํฌ์ํด์ผ ํ๋ ๋๋ ๋ง์ ๋ํด ๊ณต๋ฆฌ์ฃผ์(utilitarianism)์ ์๋ฌด๋ก (deontology)์ ๊ด์ ์์ ๊ฐ๊ฐ ๋ถ์ํ์์ค. ๋ํ, ์ด๋ฌํ ์๊ณ ๋ฆฌ์ฆ์ ๊ฒฐ์ ์ด ๋ฒ์ ์ฑ
์๊ณผ ๋๋์ ์ฃผ์ฒด์ฑ์ ๋ฏธ์น๋ ์ด๋ก ์ ์ํฅ์ ๋ํด ๋
ผํ์ญ์์ค.
#๋ฌผ๋ฆฌํ
#์์์ญํ
#์ฒ ํ
๊ด์ฐฐ์๊ฐ ๋ฌผ๋ฆฌ์ ํ์ค์ ๋ฏธ์น๋ ์ํฅ์ ๋ํ ์ด๋ก ์ ํ๊ตฌ.
์ด์ค ์ฌ๋ฆฟ ์คํ(Double-slit experiment)์ ํตํด ์
์ฆ๋ 'ํ๋-์
์ ์ด์ค์ฑ'๊ณผ '๊ด์ฐฐ์ ํจ๊ณผ'์ ๋ํด ์ค๋ช
ํ์ญ์์ค. ์ด ํ์์ด ๊ฐ๋ ๋ฌผ๋ฆฌ์ ์๋ฏธ์ ์ธ๊ฐ์ ์์์ด๋ ์ธก์ ๋๊ตฌ๊ฐ ๋ฌผ์ง์ ์ค์ฌ(reality)๋ฅผ ๊ฒฐ์ ํ๋ค๋ ํด์์ด ํ๋ ๊ณผํ์ฒ ํ์ ์ฃผ๋ ์์ฌ์ ์ ์ด๋ก ์ ์ผ๋ก ์์ ํ์์ค.
#์ปดํจํฐ๊ณผํ
#์ํ
#์๊ณ ๋ฆฌ์ฆ
์ปดํจํฐ ๊ณผํ์ ๊ฐ์ฅ ํฐ ๋์ ์ค ํ๋์ธ P-NP ๋ฌธ์ ์ ์ด๋ก ์ ๋ฐฐ๊ฒฝ.
๊ณ์ฐ ๋ณต์ก๋ ์ด๋ก ์์ P ๋ฌธ์ ์ NP ๋ฌธ์ ์ ์ ์๋ฅผ ๋ช
ํํ ํ๊ณ , P=NP์ธ์ง Pโ NP์ธ์ง์ ๋ํ ์ํ์ ์ฆ๋ช
์ด ํ์ฌ๊น์ง ๋ถ๊ฐ๋ฅํ ์ด์ ์ ๋ํด ์ด๋ก ์ ์ผ๋ก ์ค๋ช
ํ์ญ์์ค. ๋ง์ฝ P=NP๊ฐ ์ฆ๋ช
๋๋ค๋ฉด ์ํธํ, ์ต์ ํ ๋ฌธ์ ํด๊ฒฐ ๋ฑ ํ๋ ๊ธฐ์ ์ฌํ์ ๋ฏธ์น ํ๊ธ ํจ๊ณผ์ ๋ํด ๊ธฐ์ ํ์์ค.
#์ ์น์ฒ ํ
#์ฌํํ
#์ญ์ฌ
ํ์ค, ๋กํฌ, ๋ฃจ์์ ์ฌํ๊ณ์ฝ๋ก ์ ํ๋ ๋ฏผ์ฃผ์ฃผ์ ๊ด์ ์์ ๋ถ์.
ํ ๋จธ์ค ํ์ค, ์กด ๋กํฌ, ์ฅ์ํฌ ๋ฃจ์์ ์ฌํ๊ณ์ฝ๋ก ์ ๋น๊ต ๋ถ์ํ๊ณ , ๊ฐ ์ฌ์๊ฐ๊ฐ ์ ์ํ '์์ฐ ์ํ'์ '์์ฐ๊ถ'์ ๊ฐ๋
์ฐจ์ด๊ฐ ํ๋ ๊ตญ๊ฐ์ ์ ๋น์ฑ๊ณผ ์๋ฏผ์ ๊ถ๋ฆฌ/์๋ฌด์ ๋ฏธ์น๋ ์ด๋ก ์ ์ํฅ์ ๋
ผํ์ญ์์ค.
#MSA
#DDD
#์์คํ
์ค๊ณ
#ํด๋ฆฐ์ํคํ
์ฒ
๋๊ท๋ชจ ์ ์์๊ฑฐ๋ ํ๋ซํผ์ ์ํด ๋๋ฉ์ธ ์ฃผ๋ ์ค๊ณ(DDD) ์์น์ ์ ์ฉํ MSA ์ํคํ
์ฒ๋ฅผ ์ค๊ณํ์ธ์.
๋น์ ์ ์๋์ด ์๋ฃจ์
์ํคํ
ํธ์
๋๋ค. ๋๊ท๋ชจ ์ ์์๊ฑฐ๋ ํ๋ซํผ์ ๋ชจ๋๋ฆฌthic ๊ตฌ์กฐ๋ฅผ ๋ง์ดํฌ๋ก์๋น์ค ์ํคํ
์ฒ(MSA)๋ก ์ ํํ๋ ๊ณํ์ ์ธ์ฐ๊ณ ์์ต๋๋ค. ๋๋ฉ์ธ ์ฃผ๋ ์ค๊ณ(DDD)์ ์ ๋ต์ ํจํด๊ณผๆๆฏ์ ํจํด์ ๋ชจ๋ ์ฌ์ฉํ์ฌ ๋ค์์ ํฌํจํ๋ ์์ธ ์ค๊ณ์๋ฅผ ์์ฑํ์ญ์์ค.
1. **๋ฐ์ด๋๋ ์ปจํ
์คํธ(Bounded Context) ์ ์**: ์ฃผ๋ฌธ, ๊ฒฐ์ , ์ํ, ์ฌ๊ณ , ๋ฐฐ์ก ๋ฑ ํต์ฌ ๋๋ฉ์ธ์ ์ด๋ป๊ฒ ๊ตฌ๋ถํ ๊ฒ์ธ์ง ์ค๋ช
ํ๊ณ ์ปจํ
์คํธ ๋งต(Context Map)์ ํ
์คํธ๋ก ๊ธฐ์ ํ์ญ์์ค.
2. **์ด๋ฒคํธ ์ฃผ๋ ์ํคํ
์ฒ ์ ์ฉ**: ์๋น์ค ๊ฐ ๊ฐ๊ฒฐํฉ์ ํผํ๊ธฐ ์ํด ์ด๋ฒคํธ ๊ธฐ๋ฐ ํต์ (Domain Events)์ ์ด๋ป๊ฒ ์ค๊ณํ ๊ฒ์ธ์ง, ์๋ฅผ ๋ค์ด '์ฃผ๋ฌธ ์๋ฃ' ์ด๋ฒคํธ ๋ฐ์ ์ '์ฌ์ฐจ๊ฐ' ๋ฐ '๋ฐฐ์ก ์์' ์๋น์ค๊ฐ ์ฒ๋ฆฌํ๋ ํ๋ฆ์ ์ค๋ช
ํ์ญ์์ค.
3. **๋ฐ์ดํฐ ์ผ๊ด์ฑ ์ ๋ต**: ๋ถ์ฐ ํธ๋์ญ์
ํ๊ฒฝ์์ ๋ฐ์ดํฐ ์ ํฉ์ฑ์ ๋ณด์ฅํ๊ธฐ ์ํ ํจํด(Saga Pattern - Choreography vs Orchest
#๊ฒฝ์์ ๋ต
#์๊ธฐ๊ด๋ฆฌ
#๋น์ฆ๋์ค๋ถ์
๋งค์ถ ํ๋ฝ๊ณผ ์ธ๋ ฅ ๊ฐ์ถ์ผ๋ก ์ธํ ์๊ธฐ์ ์ฒํ ์ค๊ฒฌ ๊ธฐ์
์ ์ํ 3๋จ๊ณ ํ์ ์ ๋ต์ ์๋ฆฝํ๊ณ ๊ตฌ์ฒด์ ์ธ ์คํ ๊ณํ์ ์ ์ํฉ๋๋ค.
๋งค์ถ์ด 3๋
์ฐ์ ๊ฐ์ํ๊ณ ์์ผ๋ฉฐ, ์ต๊ทผ ํต์ฌ ์ธ๋ ฅ์ ์ดํ๋ก ์ธํ ์กฐ์ง ๋ถ๊ดด ์๊ธฐ์ ์ฒํ ๊ฐ์์ ์ค๊ฒฌ ์ ์กฐ ๊ธฐ์
'A์ฌ'์ ๋ํ ๋ถ์ ๋ณด๊ณ ์๋ฅผ ์์ฑํ์ญ์์ค. 1. ํ์ฌ ์ฌ๋ฌด ์ํ, ์์ฅ ์ ์ ์จ, ์กฐ์ง ๋ฌธํ์ ๋ฌธ์ ์ ์ ์ง๋จํ์ญ์์ค. 2. ๋จ๊ธฐ(6๊ฐ์), ์ค๊ธฐ(1~2๋
), ์ฅ๊ธฐ(3๋
์ด์)๋ก ๋๋์ด ๊ตฌ์ฒด์ ์ธ ํ์ ์ ๋ต์ ์ ์ํ๋, ๋น์ฉ ์ ๊ฐ๊ณผ ์ ์ฌ์
์ง์ถ์ ๊ท ํ์ ๋ง์ถ์ญ์์ค. 3. ๊ฐ ๋จ๊ณ๋ณ ํต์ฌ ์ฑ๊ณผ ์งํ(KPI)์ ์ ์ฌ์ ๋ฆฌ์คํฌ ๊ด๋ฆฌ ๋ฐฉ์์ ํฌํจํ์ญ์์ค. ์ ๋ฌธ ๊ฒฝ์ ์ปจ์คํดํธ์ ๊ด์ ์์ ๋
ผ๋ฆฌ์ ์ด๊ณ ์ค๋๋ ฅ ์๊ฒ ์์ฑํด์ผ ํฉ๋๋ค.
#์์ค์ฐฝ์
#SF
#์๋๋น๋ฉ
2090๋
์์ธ์ ๋ฐฐ๊ฒฝ์ผ๋ก ํ ์ฌ์ด๋ฒํํฌ ๋จํธ ์์ค์ ์๋ก ์ ์์ฑํฉ๋๋ค. ๊ธฐ์ต ๊ฑฐ๋์ ์ธ๊ณต์ง๋ฅ์ ์ค๋ฆฌ์ ๋๋ ๋ง๋ฅผ ๋ค๋ฃน๋๋ค.
2090๋
, ์ด์ฐ๊ฒฐ ์ฌํ๊ฐ ๋ ์์ธ์ ๋น๋ฏผ๊ฐ '๋ค์ค-ํ๋'๋ฅผ ๋ฐฐ๊ฒฝ์ผ๋ก ํ ๋จํธ ์์ค์ ๋์
๋ถ(์ฝ 1,500์)๋ฅผ ์์ฑํ์ญ์์ค. ์ฃผ์ธ๊ณต์ ๋ถ๋ฒ์ ์ผ๋ก ์ฌ๋๋ค์ ๊ธฐ์ต์ ์ถ์ถํ๊ณ ํ๋งคํ๋ '๊ธฐ์ต ์์ธ'์
๋๋ค. ์ ๊ฒฝ๋ง ์นฉ์ ๋ณด๊ธ์ผ๋ก ๊ธฐ์ต์ ์ง์ ์ฌ๋ถ๋ฅผ ๊ตฌ๋ณํ๊ธฐ ํ๋ ์ธ์์์, ์ฃผ์ธ๊ณต์ด ์์ ์ ๊ธฐ์ต ์์ ์จ๊ฒจ์ง ๊ณผ๊ฑฐ์ ๋น๋ฐ์ ๋ฐ๊ฒฌํ๋ ๊ณผ์ ์ ๋ฌ์ฌํ์ญ์์ค. ๊ฐ๊ฐ์ ์ธ ๋ฌ์ฌ(๋ค์จ์ฌ์ธ์ ๋ฐ์ฌ, ์ฌ์ด๋ฒ๋คํฑ ํ์ ๊ธฐ๊ณ์, ํฉ์ฑ ๋น์ ์ ์ ๋๋ก์ ๋์)๋ฅผ ํ์ฉํ์ฌ ์์ธํ๊ณ ๋ชฝํ์ ์ธ ๋ถ์๊ธฐ๋ฅผ ์กฐ์ฑํ๊ณ , '์ ์ฒด์ฑ'์ ๋ํ ์ฒ ํ์ ์ง๋ฌธ์ ๋์ง๋ ๋ฐฉํฅ์ผ๋ก ์์ ํ์ญ์์ค.
#์ผ๊ธฐ
#์๋ฌธ
#์ผ์
์ค๋ ์์๋ ์ผ ์ค ๊ฐ์ฅ ๊ธฐ์ต์ ๋จ๋ ํ ๊ฐ์ง๋ฅผ ์งง๊ฒ ์ ์ด๋ณด์ธ์.
์ค๋ ํ๋ฃจ ์ค ๊ฐ์ฅ ๊ธฐ์ต์ ๋จ๋ ์ฌ๊ฑด์ด๋ ๊ฐ์ ์ ๋ฌด์์ด์๋์? ๊ทธ ์ผ์ด ๏ฟฝ
#์ด๋ฉ์ผ
#์๋ฌธ
#์ผ์
์ค๋๋ง์ ์ฐ๋ฝํ๋ ์น๊ตฌ์๊ฒ ์๋ถ๋ฅผ ๋ฌป๋ ์งง์ ์ด๋ฉ์ผ์ ์์ฑํฉ๋๋ค.
๋๋ฅผ ๋์ ํด์ ์น๊ตฌ ๋ฏผ์์๊ฒ ์๋ถ๋ฅผ ๋ฌป๋ ์งง์ ์ด๋ฉ์ผ์ ์์ฑํด ์ค. ์ค๋๋ง์ ์ฐ๋ฝํด์ ๊ฑด๊ฐ์ด ์ด๋ค์ง ๋ฌผ์ด๋ด ์ฃผ๊ณ , ๋ค์ ์ฃผ์ ๋ง๋์ ๋ฐฅ์ ๋จน์๊ณ ์ ์ํด ์ค.
#์์ฝ
#๋
ํด
#์๋ฌธ
์ฃผ์ด์ง ํ
์คํธ์ ํต์ฌ ๋ด์ฉ์ ํ ๋ฌธ์ฅ์ผ๋ก ์์ฝํฉ๋๋ค.
๋ค์ ๊ธ์ ์ฝ๊ณ ํต์ฌ ๋ด์ฉ์ ํ ๋ฌธ์ฅ์ผ๋ก ์์ฝํด ์ค. ์์ฝ์ ๊ฐ๋จ ๋ช
๋ฃํ๊ฒ ์์ฑํด ์ค. ์ฌ๊ณผ๋ ๋นํ๋ฏผ์ด ํ๋ถํ๊ณ ๋ง์ด ์ข์ต๋๋ค. ๋งค์ผ ์ฌ๊ณผ๋ฅผ ๋จน์ผ๋ฉด ๊ฑด๊ฐ์ ์ข์ต๋๋ค.
#๊ณํ
#์ผ์
#์๊ฐ๊ด๋ฆฌ
์์ฐ์ ์ธ ์ฃผ๋ง์ ๋ณด๋ด๊ธฐ ์ํ ์ผ์ ์ ๊ณํํฉ๋๋ค.
๋๋ฅผ ์ํด ์์ฐ์ ์ธ ํ๋ฃจ๋ฅผ ๋ณด๋ผ ์ ์๋ ํ ์์ผ ์ผ์ ์ ์ง์ค. ์์นจ 9์๋ถํฐ ์ ๋
6์๊น์ง, ๊ณต๋ถ, ์ด๋, ํด์์ ํฌํจํ ๊ตฌ์ฒด์ ์ธ ๊ณํ์ ์ธ์์ค.
#์์ด๋์ด
#์ ๋ฌผ
#๊ฐ์กฑ
๋ถ๋ชจ๋์ ์ํ ์ ์ ํ ์์ผ ์ ๋ฌผ ์์ด๋์ด๋ฅผ ์ ์ํฉ๋๋ค.
๋ถ๋ชจ๋์ ์ํ ์์ผ ์ ๋ฌผ ์์ด๋์ด 3๊ฐ์ง๋ง ์ถ์ฒํด ์ค. ๊ฑด๊ฐ์ ๊ด์ฌ์ด ๋ง์ผ์ ๋ถ๋ชจ๋๊ป ์ ํฉํ, ์ค์ฉ์ ์ธ ์ ๋ฌผ ์์ฃผ๋ก ์ถ์ฒํด ์ค.
#๊ต์
#๋ง์ถค๋ฒ
#๋ฌธ๋ฒ
์ฃผ์ด์ง ๋ฌธ์ฅ์ ๋ง์ถค๋ฒ๊ณผ ๋ฌธ๋ฒ์ ๊ต์ ํฉ๋๋ค.
๋ค์ ๋ฌธ์ฅ์ ๋ง์ถค๋ฒ๊ณผ ๋ฌธ๋ฒ์ด ํ๋ฆฐ ๋ถ๋ถ์ด ์๋ค๋ฉด ๊ต์ ํด ์ค. ์ด์ ์น๊ตฌ๋ ๊ฐ์ด ์ํ๋ฅผ ๋ดค๋๋ฐ ์ ๋ง ์ฌ๋ฏธ์์์ด. ๋ฐฐ์ฐ๋ค์ ์ฐ๊ธฐ๊ฐ ๋ฉ์ก์ด.
#software
#architecture
#microservices
#scalability
์ด๋น 100๋ง ๊ฑด์ ์์ฒญ์ ์ฒ๋ฆฌํ๋ ์ ์์๊ฑฐ๋ ํ๋ซํผ์ ์ํ ์์คํ
์ํคํ
์ฒ๋ฅผ ์ค๊ณํ์ญ์์ค.
์ด๋น 100๋ง ๊ฑด์ ์ฟผ๋ฆฌ(QPS)๋ฅผ ์ฒ๋ฆฌํด์ผ ํ๋ ๊ธ๋ก๋ฒ ์ ์์๊ฑฐ๋ ํ๋ซํผ์ ์ํ ๋ง์ดํฌ๋ก์๋น์ค ์ํคํ
์ฒ๋ฅผ ์ค๊ณํ๋ ์์ธํ ๊ธฐ์ ์ ์์๋ฅผ ์์ฑํ์ญ์์ค. ์ ์์์๋ ๋ค์ ์์๊ฐ ํฌํจ๋์ด์ผ ํฉ๋๋ค: 1) ์๋น์ค ๋ฉ์(Service Mesh) ๋์
์ ํฌํจํ ์๋น์ค ๋ถํ ์ ๋ต, 2) ์ด๋ฒคํธ ๊ธฐ๋ฐ ์ํคํ
์ฒ๋ฅผ ํตํ ๋ฐ์ดํฐ ์ผ๊ด์ฑ ํ๋ณด ๋ฐฉ์(Saga ํจํด ๋ฑ), 3) ๊ธ๋ก๋ฒ ์ง์ฐ ์๊ฐ ์ต์ํ๋ฅผ ์ํ ๋ฉํฐ ๋ฆฌ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ณต์ ๋ฐ ์บ์ฑ ์ ๋ต, 4) ์ฅ์ ๊ฒฉ๋ฆฌ(Fault Isolation) ๋ฐ ํ๋ณต ํ๋ ฅ์ฑ(Resilience) ์ค๊ณ. ๋ํ, API ๊ฒ์ดํธ์จ์ด์ ์ญํ ๊ณผ ๊ฐ ์๋น์ค ๊ฐ์ ํต์ ํ๋กํ ์ฝ(gRPC, REST ๋ฑ) ์ ํ์ ๋ํ ๊ทผ๊ฑฐ๋ฅผ ๊ธฐ์ ํ์ญ์์ค.
#writing
#job
์ ์
์ฌ์ ์ง์์ ์ํ ๊ฐ๋จํ ์๊ธฐ์๊ฐ์๋ฅผ ์์ฑํด ๋ณด์ธ์.
๋ง์ผํ
์ง๋ฌด ์ ์
์ฌ์์ผ๋ก ์ง์ํ๊ธฐ ์ํ ์๊ธฐ์๊ฐ์ ์ด์์ ์์ฑํด ์ฃผ์ธ์. ์ฑ๊ฒฉ์ ์ฅ์ ๊ณผ ์ง์ ๋๊ธฐ๋ฅผ ์ค์ฌ์ผ๋ก 300์ ์ ๋๋ก ์ ๋ฆฌํด ์ฃผ์ธ์.