๐[์คํ๋ง ๋ถํธ - ์ดํด์ ์๋ฆฌ] ์คํ๋ง ๋ถํธ ์์ํ๊ธฐ
์คํ๋ง ๋ถํธ ์๊ฐ
์คํ๋ง๋ถํธ(Spring Boot)๋ ์คํ๋ง์ ๊ธฐ๋ฐ์ผ๋ก ์ค๋ฌด ํ๊ฒฝ์ ์ฌ์ฉ๊ฐ๋ฅํ ์์ค์ ๋ ๋ฆฝ์คํํ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ณต์กํ ๊ณ ๋ฏผ ์์ด ๋น ๋ฅด๊ฒ ์์ฑํ ์ ์๊ฒ ๋์์ฃผ๋ ์ฌ๋ฌ๊ฐ์ง ๋๊ตฌ์ ๋ชจ์์ด๋ค.
๐ก ์คํ๋ง โ ์คํ๋ง ๋ถํธ!!
์คํ๋ง ๋ถํธ์ ํต์ฌ ๋ชฉํ
- ๋งค์ฐ ๋น ๋ฅด๊ณ ๊ด๋ฒ์ํ ์์ญ์ ์คํ๋ง ๊ฐ๋ฐ ๊ฒฝํ์ ์ ๊ณต
- ๊ฐํ ์ฃผ์ฅ์ ๊ฐ์ง๊ณ ์ฆ์ ์ ์ฉ ๊ฐ๋ฅํ ๊ธฐ์ ์กฐํฉ์ ์ ๊ณตํ๋ฉด์, ํ์์ ๋ฐ๋ผ ์ํ๋ ๋ฐฉ์์ผ๋ก ์์ฝ๊ฒ ๋ณํ ๊ฐ๋ฅ
- ํ๋ก์ ํธ์์ ํ์๋ก ํ๋ ๋ค์ํ ๋น๊ธฐ๋ฅ์ ์ธ ๊ธฐ์ (๋ด์ฅํ ์๋ฒ, ๋ณด์, ๋ฉํธ๋ฆญ, ์ํ ์ฒดํฌ, ์ธ๋ถ ์ค์ ๋ฐฉ์ ๋ฑ) ์ ๊ณต
- ์ฝ๋ ์์ฑ์ด๋ xml ์ค์ ์ ํ์๋ก ํ์ง ์์
์คํ๋ง ๋ถํธ์ ์ญ์ฌ
2012๋ ์คํ๋ง ํ๋ ์์ํฌ ํ๋ก์ ํธ์ ์ด์๋ก ๋ฑ๋ก๋ โContainerless ์น ๊ฐ๋ฐ ์ํคํ ์ฒ์ ์ง์โ์์ฒญ์์ ๋ ผ์์ ๊ฐ๋ฐ ์์
https://github.com/spring-projects/spring-framework/issues/14521
- 2013๋ 0.5.0.M1 ๊ณต๊ฐ
- 2014๋ 1.0 GA ๊ณต๊ฐ
- 2018๋ 2.0 GA ๊ณต๊ฐ
- 2022๋ 2.7.5 ๊ณต๊ฐ
Containerless
๊ธฐ๋ณธ์ ์ผ๋ก JAVA์ ํ์ค ์น ๊ธฐ์ ์ ์ฌ์ฉํ๋ ค๋ฉด Servlet Container๊ฐ ์กด์ฌํด์ผํจ.
Containerless๋ ์ค์ ๋ก๋ Servlet Container๊ฐ ๋์ํ์ง๋ง ์ด๋ฌํ ์ค์ ์ SpringBoot๊ฐ ๋ค ์์์ ํด์ค ๋ํ ์ํ๋ ๋ฐฉ์์ผ๋ก Servlet Container๋ฅผ ์ปค์คํฐ๋ง์ด์ง ํ ์ ์์
์คํ๋ง ํ๋ ์์ํฌ์ ์ค๊ณ ์ฒ ํ
- ๊ทน๋จ์ ์ธ ์ ์ฐํจ ์ถ๊ตฌ
- ๋ค์ํ ๊ด์ ์ ์์ฉ
- Not opinionated
- ์๋ง์ ์ ํ์ง๋ฅผ ๋ค ํฌ์ฉ
- ํ์ง๋งโฆโฆ
์คํ๋ง ๋ถํธ์ ์ค๊ณ ์ฒ ํ
- Opinionated - ์๊ธฐ ์ฃผ์ฅ์ด ๊ฐํ, ์๊ธฐ ์๊ฒฌ์ ๊ณ ์งํ๋, ๋ ์ ์ ์ธ
- ์ผ๋จ ์ ํด์ฃผ๋ ๋๋ก ๋น ๋ฅด๊ฒ ๊ฐ๋ฐํ๊ณ ๊ณ ๋ฏผ์ ๋์ค์
- ์คํ๋ง์ ์ ํ์ฉํ๋ ๋ฐ์ด๋ ๋ฐฉ๋ฒ์ ์ ๊ณต
- ์ ์ฐํ ํ์ฅ
- ์คํ๋ง ๋ถํธ์ ๋ด์ฅ๋ ๋ํดํธ ๊ตฌ์ฑ์ ์ปค์คํฐ๋ง์ด์ง ํ๋ ๋งค์ฐ ์์ฐ์ค๋ฝ๊ณ ์ ์ฐํ ๋ฐฉ๋ฒ์ ์ ๊ณต
- ์คํ๋ง ๋ถํธ๊ฐ ์คํ๋ง์ ์ฌ์ฉํ๋ ๋ฐฉ์์ ์ดํดํ๋ค๋ฉด ์ธ์ ๋ผ๋ ์คํ๋ง ๋ถํธ๋ฅผ ์ ๊ฑฐํ๊ณ ์ํ๋ ๋ฐฉ์์ผ๋ก ์ฌ๊ตฌ์ฑ ๊ฐ๋ฅ
- ์คํ๋ง ๋ถํธ์ฒ๋ผ ๊ธฐ์ ๊ณผ ๊ตฌ์ฑ์ ๊ฐํธํ๊ฒ ์ ๊ณตํ๋ ๋๋ง์ ๋ชจ๋ ์์ฑ
๋๊ธ๋จ๊ธฐ๊ธฐ