์น ์ ํ๋ฆฌ์ผ์ด์ ์ ์ดํด
์ฐ๋ ๋๋..?
- ์๋ฐ ๋ฉ์ธ ๋ฉ์๋๋ฅผ ์คํํ๋ฉด main์ฐ๋ ๋๊ฐ ์คํ๋จ
- ๋์์ฒ๋ฆฌ๊ฐ ํ์ํ๋ค๋ฉด ์ฐ๋ ๋๋ฅผ ์ถ๊ฐ๋ก ์์ฑ
์์ฒญ์ด ๋ฐ์ํ์ ๋..
์์ฒญ์ด ์ฐ๋ ๋๋ณด๋ค ๋ง๋ค๋ฉด ์ผ์ ์๊ฐ ์ดํ 'ํ์์์'์ด ๋ฐ์ํ ์ ์๊ณ ๋ฌธ์ ํด๊ฒฐ์ ์ํด '์ ๊ท์ฐ๋ ๋'๋ฅผ ์์ฑํ๋ค.
ํ์ง๋ง ์ฐ๋ ๋ ์์ฑ์๋ ๋จ์ ์ด ์๋ค.
- ์ฐ๋ ๋ ์์ฑ ๋น์ฉ์ด ๋น์ธ๋ค. (CPU, ๋ฉ๋ชจ๋ฆฌ)
- ์์ฒญ๋ง๋ค ์์ฑํ๋ฉด '์๋ต์๋'๊ฐ ๋ฆ์ด์ง๋ค.
- ์ฐ๋ ๋๊ฐ ๋ง์์ง๋ฉด '์ปจํ ์คํธ ์ค์์นญ' ๋น์ฉ์ด ๋ฐ์ํ๋ค.
- ์ฐ๋ ๋๋ฅผ ๋ฌด์ ํ์ผ๋ก ์์ฑํ๋ค๋ณด๋ฉด CPU, ๋ฉ๋ชจ๋ฆฌ ์๊ณ์ ์ ๋์ด ์๋ฒ๊ฐ ์ฃฝ๋๋ค.
WAS๋ ์ด๋ฅผ ์ด๋ป๊ฒ ํด๊ฒฐํ์๊น..?
์ฐ๋ ๋ํ ํ์ฉ
์ฐ๋ ๋ ํ์ ์ฐ๋ ๋๋ฅผ ๋ฏธ๋ฆฌ ์์ฑํด๋๊ณ ์ฐ๋ ๋๋ฅผ ์ฌ์ฉํ๊ณ ๋ฐ๋ฉํ๊ณ ํํ๋ก ์ฌ์ฉํ๋ค.
⇒ ๋์์์ฒญํ์ฉ๊ฐฏ์๋ฅผ ์ ํด๋ ๊ฒ๊ณผ ๊ฐ๋ค. (์์ฑํด๋ ์ฐ๋ ๋ ์)
⇒ ์ผ์ ์ ์ด์์ ๋์ผ๋ฉด ์ฐ๋ ๋ [๋๊ธฐ] ๋๋ [๊ฑฐ์ ]๋ก ์ฒ๋ฆฌํ๋ค. (tomcat์ ์ต๋ 200๊ฐ ๊ธฐ๋ณธ)
- WAS ์ฃผ์ ํ๋ ํฌ์ธํธ๋ ์ต๋ ์ฐ๋ ๋(Max Thread) ์
- ๋ฎ๊ฒ ์ค์ ์, ์๋ฒ ๋ฆฌ์์ค๊ฐ ์ฌ์ ๋ก์ด ๋ฐ๋ฉด ํด๋ผ์ด์ธํธ๋ ์ ์ ์์ฒญ์๋ ์ง์ฐ์๋ต
- ๋๊ฒ ์ค์ ์, CPU, ๋ค์์ ์์ฒญ ์ ๋ฉ๋ชจ๋ฆฌ ๋ฆฌ์์ค ์๊ณ์ ์ด๊ณผ๋ก ์๋ฒ ๋ค์ด๋ ์ ์์ต๋๋ค.
- ์ฅ์ ๋ฐ์ ์, ๋์๋ฒ
- ํด๋ผ์ฐ๋์ผ ๊ฒฝ์ฐ, ์๋ฒ๋ฅผ ์ํ ํ์ฅ(Scale Out) ์ดํ ํ๋
- ํด๋ผ์ฐ๋๊ฐ ์๋ ๊ฒฝ์ฐ ์ํฉ์ ๋ง์ถฐ ํ๋
- ์ฐ๋ ๋ ํ์ ์ ์ ์ซ์๋ฅผ ์ด๋ป๊ฒ ์ฐพ์๊น??
- ์ ํ๋ฆฌ์ผ์ด์ ๋ก์ง์ ๋ณต์ก๋, CPU, ๋ฉ๋ชจ๋ฆฌ, IO ์ํฉ์ ๋ฐ๋ผ ๋ค๋ฆ
- ์ค์ ์๋น์ค์ ์ ์ฌํ๊ฒ ์ฑ๋ฅ ํ ์คํธ๊ฐ ํ์ํจ
- TOOL : ์ํ์นab, ์ ์ด๋ฏธํฐ, nGrinder
WAS๊ฐ ๊ฐ๋ฐ์์ฐ์ฑ์ ๋์ด๋ ์ด์
- ๋ฉํฐ์ฐ๋ ๋์ ๋ํ ๋ถ๋ถ์ WAS๊ฐ ์ฒ๋ฆฌํ๋ค. (๊ฐ๋ฐ์๊ฐ ๋ฉํฐ์ฐ๋ ๋ ๊ด๋ จ ์ฝ๋๋ฅผ ์ ๊ฒฝ์ฐ์ง ์์๋ ๋๋ค)
- ๊ฐ๋ฐ์๋ ๊ทธ์ ์ฑ๊ธ ์ฐ๋ ๋ ํ๋ก๊ทธ๋๋ฐ์ ํ๋ฏ์ด ํธ๋ฆฌํ๊ฒ ๊ฐ๋ฐ
- ๊ณต์ ํด์ ์ฌ์ฉํ๋ ์ฑ๊ธํค ๊ฐ์ฒด(์๋ธ๋ฆฟ, ์คํ๋ง ๋น)๋ง ์ฃผ์ํด์ ์ฌ์ฉํ๋ค.
์๋ฐ ์น ๊ธฐ์ ์ญ์ฌ
- ์๋ธ๋ฆฟ (์๋ฐ์ฝ๋)
- HTML ์์ฑ์ด ์ด๋ ค์
- JSP๊ฐ ๊ฐ๋ฐ๋จ
- HTML ์์ฑ ํธ๋ฆฌํ์ง๋ง, ๋น์ฆ๋์ค ๋ก์ง๊น์ง ๋ฃ์ด ๋๋ฌด ๋ง์ ์ญํ ์ ๋งก๊ฒ๋์ด๋ฒ๋ฆผ....
- ์๋ธ๋ฆฟ + JSP๋ฅผ ์กฐํฉํ MVCํจํด ์ฌ์ฉ
- ๋ชจ๋ธ, ๋ทฐ, ์ปจํธ๋กค๋ฌ๋ก ์ญํ ์ ๋๋ ๊ฐ๋ฐํจ
- MVC ํ๋ ์์ํฌ์ ‘์ถ์ถ ์ ๊ตญ ์๋’ 2000~2010์ด
- MVCํจํด ์๋ํ, ๋ณต์กํ ์น ๊ธฐ์ ์ ํธ๋ฆฌํ๊ฒ ์ฌ์ฉํ ์ ์๋ ๊ธฐ๋ฅ ์ง์.. (์คํธ๋ฟ์ธ , ์น์ํฌ, ์คํ๋งMVC)
์๋ ธํ ์ด์ ๊ธฐ๋ฐ์ ์คํ๋ง MVC
- ๊น๋ํ ์ฝ๋์ ์ ์ฐํ ์ฝ๋ ๊ด๋ฆฌ
์คํ๋ง๋ถํธ์ ๋ฑ์ฅ (์คํ๋ง์ ๋ ํธ๋ฆฌํ๊ฒ ์ฌ์ฉํ ์ ์๊ฒ ํด์ค)
- ์๋ฒ๋ฅผ ๋ด์ฅ (ํฐ์บฃ)
๊ณผ๊ฑฐ์๋ ์๋ฒ์ WAS๋ฅผ ์ง์ ์ค์นํ๊ณ ์์ค๋ Warํ์ผ์ ๋ง๋ค์ด์ WAS์ ๋ฐฐํฌํ์ [์๋ฒ + warํ์ผ] → ๋ฐฐํฌ
→ ์คํ๋ง ๋ถํธ๋ ๋น๋๊ฒฐ๊ณผ(Jar)์ WAS์๋ฒ๊ฐ ํฌํจ๋จ → ๋น๋ ๋ฐฐํฌ๊ฐ ๋จ์ํ๋จ
์ต์ ๊ธฐ์ - ์คํ๋ง ์น ๊ธฐ์ ์ ๋ถํ
- Web Servlet - Spring MVC
- Web Reactive - Spring WebFlux
์๋ฐ ๋ทฐ ํ ํ๋ฆฟ ์ญ์ฌ (HTML ์์ฑ ๋ทฐ ๊ธฐ๋ฅ)
- JSP
- ์๋ ๋๋ฆผ, ๊ธฐ๋ฅ๋ถ์กฑ (์คํ๋ง๋ถํธ์์ ๊ถ์ฅํ์ง ์์)
- ํ๋ฆฌ๋ง์ปค, ๋ฒจ๋ก์ํฐ
- ์๋ ๋ฌธ์ ํด๊ฒฐ, ๋ค์ํ ๊ธฐ๋ฅ ์ ๊ณต
- ํ์๋ฆฌํ
- ๋ด์ถ๋ด ํ ํ๋ฆฟ : HTML ๋ชจ์์ ์ ์งํ๋ฉด์ ๋ทฐ ํ ํ๋ฆฟ ์ ์ฉ๊ฐ๋ฅ (htmlํ๊ทธ์์ ์ฌ์ฉํ๋ฏ๋ก ๊น๋)
- ์คํ๋ง MVC์ ๊ฐ๋ ฅํ ๊ธฐ๋ฅ ํตํฉ