๐ป [Theory] Web Server์ WAS
๐ป [Theory] Web Server์ WAS
์๋
ํ์ธ์. ๐
์ค๋์ Web Server์ WAS์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค.
Web Server ๋?
- ํด๋ผ์ด์ธํธ๊ฐ ์์ฒญํ๋ HTML ๋ฌธ์๋ ๊ฐ์ข ๋ฆฌ์์ค ์ ์ ์ปจํ ์ธ ๋ฅผ ์ ๋ฌํ๋ ์ํํธ์จ์ด ์ด๋ค.
- ์์์ ๋งํ ์ํํธ์จ์ด ์ธ์๋ ํด๋น ์ํํธ์จ์ด๋ฅผ ์คํ์ํค๋ ํ๋์จ์ด ๋ํ WEB์๋ฒ๋ผ๊ณ ๋งํ๋ค.
- ๊ทธ๋ฌ๋ ์ด ํฌ์คํธ์์๋ Apache HTTP ์๋ฒ, NGINX, WebtoB ์ ๊ฐ์ ์ํํธ์จ์ด ์ ํด๋นํ๋ WEB์๋ฒ์ ๋ํด์ ๋งํ๋๋ก ํ๊ฒ ๋ค.
์น ์๋ฒ๋ ํด๋ผ์ด์ธํธ(์ฌ์ฉ์)๊ฐ ์น ๋ธ๋ผ์ฐ์ ์์ ์ด๋ค ํ์ด์ง ์์ฒญ์ ํ๋ฉด ์น์๋ฒ์์ ๊ทธ ์์ฒญ์ ๋ฐ์ ์ ์ ์ปจํ ์ธ ๋ฅผ ์ ๊ณตํ๋ ์๋ฒ์ด๋ค. ์ฌ๊ธฐ์ ์ ์ ์ปจํ ์ธ ๋ ๋จ์ HTML๋ฌธ์ ,CSS, javascript,์ด๋ฏธ์ง,ํ์ผ ๋ฑ ์ฆ์ ์๋ต๊ฐ๋ฅํ ์ปจํ ์ธ ์ด๋ค. ๊ทธ๋ ๋ค๋ฉด ์น ์๋ฒ๋ ์ ์ ์ปจํ ์ธ ๋ง ์ ๊ณตํ๋? ๊ทธ๊ฒ์ ์๋๋ค. ์น ์๋ฒ๊ฐ ๋์ ์ปจํ ์ธ ๋ฅผ ์์ฒญ ๋ฐ์ผ๋ฉด WAS์๊ฒ ํด๋น ์์ฒญ์ ๋๊ฒจ์ฃผ๊ณ , WAS์์ ์ฒ๋ฆฌํ ๊ฒฐ๊ณผ๋ฅผ ํด๋ผ์ด์ธํธ(์ฌ์ฉ์)์๊ฒ ์ ๋ฌํด์ฃผ๋ ์ญํ ๋ ํ๋ค.
WAS (Web Application Server) ๋?
- Web Application Server ์ ์ฝ์์ด๋ค.
- ๋์ ์ปจํ ์ธ ๋ฅผ ์ ๊ณตํ๊ธฐ ์ํด ๋ง๋ค์ด์ง ์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ๋ก์จ ์น ํ๋ก๊ทธ๋จ์ ์คํํ ์ ์๋ ํ๊ฒฝ์ ์ ๊ณตํ๋ค.
- ๋น์ฆ๋์ค ๋ก์ง ์ํ์ด ๊ฐ๋ฅํ๋ค.
- DB ์ ์ ๊ฐ๋ฅ
- ์น ์ปจํ
์ด๋(Web Container) ํน์ ์๋ธ๋ฆฟ ์ปจํ
์ด๋(Servlet Container)๋ผ๊ณ ๋ ๋ถ๋ฆฐ๋ค.
- Container ๋ JSP, Servlet ์ ์คํ์ํฌ ์ ์๋ ์ํํธ์จ์ด๋ฅผ ๋งํ๋ค.
- ์ฆ, WAS๋ JPS, Servlet ๊ตฌ๋ ํ๊ฒฝ์ ์ ๊ณตํ๋ค
- WAS๋ Web Server + Web Container ๋ก ์ ์ ์ธ ์ปจํ
์ธ ๋ ์ฒ๋ฆฌ๊ฐ ๊ฐ๋ฅํ๋ค.
- ์ ์ ์ปจํ ์ธ ์์ฒญ์ด ์ค๋ฉด Web Server ๊ฐ ๋์ ์ปจํ ์ธ ์์ฒญ์ด ์ค๋ฉด Web Container ๊ฐ ์ฒ๋ฆฌํ๋ค.
- ๋ํ์ ์ธ WAS๋ก๋ Tomcat,JBoss, Jeus, WebLogic, WebSphere ๋ฑ์ด ์๋ค.
Web Server์ WAS์ ์ฐจ์ด
๊ฐ๋ตํ ๋งํ์๋ฉด
Web Server ๋ ์ ์ ์ธ ์ปจํ ์ธ ๋ฅผ ์ ๊ณตํ๋ ์๋ฒ์ด๊ณ WAS๋ ๋์ ์ธ ์ปจํ ์ธ ๋ฅผ ์ ๊ณตํ๋ ์๋ฒ์ด๋ค.
์์ ์ WAS ์์๋ ์ ์ ์ธ Web Server ๊ธฐ๋ฅ์ ์ ๊ณตํ์ง ์์์ง๋ง ์ค๋ ๊ธฐ๊ฐ WAS ๊ฐ ๋ฐ์ ์ ๊ฑฐ๋ญํ์ฌ ์ต๊ทผ WAS ๋ค์ Web Server ๋
๊ฐ๊ฒ ๋์ด ๋์ ์ธ ์ปจํ ์ธ ๋ฟ๋ง ์๋๋ผ ์ ์ ์ธ ์ปจํ ์ธ ๋ ์ ๊ณตํด์ฃผ๊ณ ์๋ค.
๊ทธ๋ ๊ธฐ ๋๋ฌธ์, Web Server ์์ด WAS ๋ง์ผ๋ก๋ ๋ชจ๋ ์ฒ๋ฆฌ๊ฐ ๊ฐ๋ฅํ๋ค.
ํ์ง๋ง ์ฃผ๋ก ์๋ฒ ๊ตฌ์ฑ ์์ Web Server์ WAS๋ฅผ ๋ถ๋ฆฌํ์ฌ ๊ตฌ์ฑํ๋ค.
์ Web Server์ WAS๋ฅผ ๊ตฌ๋ถํ ๊น?
1. ๊ธฐ๋ฅ์ ๋ถ๋ฆฌํ์ฌ ์๋ฒ ๋ถํ๋ฅผ ๋ฐฉ์งํ๋ค.
-
WAS ๊ฐ ํผ์์ ๋ชจ๋ ์์ฒญ์ ์ฒ๋ฆฌํ ์ ์์ง๋ง ๊ทธ๋งํผ WAS ๊ฐ ๊ฐ๋นํด์ผ ํ๋ ๋ถ๋ด์ด ์ปค์ง๊ฒ ๋๋ค.
-
๊ธฐ๋ฅ์ ๋ถ๋ฆฌํด์ ๊ฐ ์๋ฒ๊ฐ ๊ฐ๋นํ๋ ๋ถํ๋ฅผ ์ค์ผ ์ ์๋๋ก Web Server์ WAS ๋ฅผ ๋ถ๋ฆฌํ๋ค.
-
Web Server ์ WAS ๋ฅผ ๋ถ๋ฆฌํ๋ฏ๋ก์จ ๊ฐ์์ ์ญํ ์ด ๋ถ๋ช ํด์ง๋ค.
2. ๋ฌผ๋ฆฌ์ ์ผ๋ก ๋ถ๋ฆฌํ์ฌ ๋ณด์์ ๊ฐํํ๋ค.
-
WAS ์๋ ์ค์ Web Application ์ด ์ฌ๋ผ๊ฐ ์๊ธฐ ๋๋ฌธ์ ์ธ๋ถ์ ์ง์ ์ฐ๊ฒฐ์ด ๋์ด ์๋ค๋ฉด ์ค์ํ ์ ๋ณด๋ ๋ฆฌ์์ค๋ค์ด ์ธ๋ถ๋ก ๋ ธ์ถ๋ ์ ์๋ค.
-
์ด๋ฅผ ๋ง๊ธฐ ์ํด์ Web Server ๋ฅผ WAS ์๋จ์ ๋ฐฐ์นํด์ ๋ฆฌ์์ค๋ฅผ ์์ ํ๊ฒ ๋ณดํธํ ์ ์๋ค.
-
WAS ์๋จ Web Server์ SSL์ ๋ํ ์๋ณตํธํ ์ฒ๋ฆฌํด ๋ณด์์ ๋ ๊ฐํํ ์๋ ์๋ค.
3. Web Server์ ์ฌ๋ฌ ๋์ WAS๋ฅผ ์ฐ๊ฒฐํ ์ ์๋ค.
- ๊ท๋ชจ๊ฐ ํฐ ์๋น์ค์์๋ ํ๋์ WEB์๋ฒ์ ํ๋์ WAS๊ฐ ์ฐ๊ฒฐ๋ ๊ตฌ์กฐ๋ง์ผ๋ก๋ ๋ง์ ์์ฒญ์ ์ฒ๋ฆฌํ๋ ๋ฐ์ ์ด๋ ค์์ด ์๊ธด๋ค.
- ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ์๋ง์ ์์ฒญ์ ํ๊ตฐ๋ฐ๊ฐ ์๋ ์ฌ๋ฌ ๊ตฐ๋ฐ์์ ์ฒ๋ฆฌ๋ฅผ ํ ์ ์๋๋ก ๋์ผํ Web Application ์ฌ๋ฌ ๊ฐ๋ฅผ ๋์ด๋ค.
-
์ด๋ ์ฌ๋ฌ ๋์ WAS์ ๊ฐ๊ฐ ์์ฒญ์ ๋ค์ด์ค๋๋ก ํ์ง ์๊ณ ์์ WEB์๋ฒ๋ฅผ ๋๊ณ ๊ฐ WAS๋ค์ WEB์๋ฒ์ ์ฐ๊ฒฐํด์ WEB์๋ฒ๋ก ๋ค์ด์ค๋ ์๋ง์ ์์ฒญ์ ๊ฐ WAS๋ค์ ์ ์ ํ๊ฒ ๋ถ๋ฐฐํด์ฃผ๋๋ก ํ๋ค.
- โป ์ด๋ ๊ฒ ๋ฐฐ์นํ์ฌ ๋ก๋๋ฐธ๋ฐ์ฑ์ ํด์ค์ผ๋ก์จ ํ๋์ WAS๊ฐ ์ฒ๋ฆฌํ๋ ์์ฒญ์ ์์ด ์ค์ด๋ค์ด ์์ ์ ์ธ ์๋น์ค ์ด์์ด ๊ฐ๋ฅํ๋ค.
- โป ๋๋ถ์ด fail over(์ฅ์ ๊ทน๋ณต), fail back ๋ ๊ฐ๋ฅ
4. ๋ค๋ฅธ ์ข ๋ฅ์ WAS๋ก ์๋น์ค ํ ์ ์๋ค.
- Java ์๋ฒ, PHP ์๋ฒ์ ๊ฐ์ด ์๋ก ๋ค๋ฅธ ์๋ฒ๋ฅผ ํ๋์ WEB์๋ฒ์ ์ฐ๊ฒฐํด์ ์๋น์ค ํ ์ ์๋ค.
์ ๋ฆฌ
์์ฒ๋ผ ๋ค์ํ ์ด์ ๊ฐ ์์ง๋ง, ์ต๊ทผ์ WAS์ ๊ธฐ๋ฅ์ด ๋ง์ด ๊ฐํ๋์๊ธฐ ๋๋ฌธ์ WEB์๋ฒ์ WAS๋ฅผ ๋ถ๋ฆฌํ๋ ๊ฐ์ฅ ํฐ ์ด์ ๋ ๋ก๋๋ฐธ๋ฐ์ฑ์ด๋ผ๊ณ ๋ณผ ์ ์๋ค.
๋
Web Server์ WAS์ ๋ํด ์์๋ณด์์ต๋๋ค.
Reference