Web programming

WAS (Web Application Server)와 WS (Web Server)의 차이

ν”„λ‘œκ·Έλž˜λ¨Έ μ˜€μ›” 2023. 10. 24.

WAS(Web Application Server)와 WS (Web Server)λŠ” μ›Ή μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ μ œκ³΅ν•˜λŠ” 데 μ‚¬μš©λ˜λŠ” 두 κ°€μ§€ μ£Όμš” μ»΄ν¬λ„ŒνŠΈλ‹€. 이 λ‘˜μ€ κΈ°λŠ₯κ³Ό 역할이 λ‹€λ₯΄λ©°, μ’…μ’… μ„œλ‘œ λ³΄μ™„μ μœΌλ‘œ μ‚¬μš©λœλ‹€.

이미지 좜처 https://velog.io/@gjwjdghk123/webserver-vs-was

Web Server (WS)

μ •μ˜

μ›Ή μ„œλ²„λŠ” 정적인 μ½˜ν…μΈ (HTML, CSS, JavaScript, 이미지 λ“±)λ₯Ό ν΄λΌμ΄μ–ΈνŠΈ(λΈŒλΌμš°μ €)에 μ œκ³΅ν•˜λŠ” μ„œλ²„λ‹€. HTTP μš”μ²­μ„ μ²˜λ¦¬ν•˜κ³  정적 νŒŒμΌμ„ λ°˜ν™˜ν•˜λŠ” 역할을 주둜 μˆ˜ν–‰ν•œλ‹€.

μ£Όμš” κΈ°λŠ₯

  1. 정적 μ½˜ν…μΈ  제곡 : HTML, CSS, JavaScript, 이미지 파일 λ“±κ³Ό 같은 정적 νŒŒμΌμ„ ν΄λΌμ΄μ–ΈνŠΈμ— 제곡.
  2. HTTP μš”μ²­ 처리 : HTTP/HTTPS ν”„λ‘œν† μ½œμ„ 톡해 ν΄λΌμ΄μ–ΈνŠΈμ˜ μš”μ²­μ„ λ°›μ•„μ„œ 응닡.
  3. λΆ€ν•˜ λΆ„μ‚° : μ—¬λŸ¬ μ„œλ²„μ— μš”μ²­μ„ λΆ„μ‚°μ‹œμΌœ μ„œλ²„μ˜ λΆ€ν•˜λ₯Ό μ€„μž„.
  4. SSL 지원 : HTTPSλ₯Ό 톡해 λ³΄μ•ˆ 톡신을 지원.

HTML, CSS, JavaScript, 이미지 파일 λ“±κ³Ό 같은 정적 파일 등은 CDN(μ§€λ¦¬μ μœΌλ‘œ λΆ„μ‚°λœ μ„œλ²„λ“€μ„ μ—°κ²°ν•œ λ„€νŠΈμ›Œν¬(μ„œλ²„)) 에 캐싱해두어 전달과 μ„±λŠ₯ 속도λ₯Ό 높인닀.

μ˜ˆμ‹œ

  • Apache HTTP Server
  • Nginx
  • Microsoft IIS (Internet Information Services)
ν΄λΌμ΄μ–ΈνŠΈ ----> μ›Ή μ„œλ²„ (Nginx) ----> 정적 파일 λ°˜ν™˜

Web Application Server (WAS)

μ •μ˜

μ›Ή μ• ν”Œλ¦¬μΌ€μ΄μ…˜ μ„œλ²„λŠ” 동적인 μ›Ή μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ μ‹€ν–‰ν•˜κ³  μ œκ³΅ν•˜λŠ” μ„œλ²„λ‹€. λΉ„μ¦ˆλ‹ˆμŠ€ λ‘œμ§μ„ μ²˜λ¦¬ν•˜κ³ , λ°μ΄ν„°λ² μ΄μŠ€μ™€ μƒν˜Έμž‘μš©ν•˜λ©°, 동적 μ½˜ν…μΈ λ₯Ό μƒμ„±ν•˜λŠ” 역할을 ν•œλ‹€.

μ£Όμš” κΈ°λŠ₯

  1. 동적 μ½˜ν…μΈ  생성: ν΄λΌμ΄μ–ΈνŠΈ μš”μ²­μ— 따라 λ™μ μœΌλ‘œ μ½˜ν…μΈ λ₯Ό μƒμ„±ν•˜μ—¬ 제곡.
  2. λΉ„μ¦ˆλ‹ˆμŠ€ 둜직 처리: μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ˜ 핡심 λ‘œμ§μ„ μ‹€ν–‰.
  3. λ°μ΄ν„°λ² μ΄μŠ€ 연동: λ°μ΄ν„°λ² μ΄μŠ€μ™€ μƒν˜Έμž‘μš©ν•˜μ—¬ 데이터λ₯Ό 읽고 μ“°λŠ” μž‘μ—… μˆ˜ν–‰.
  4. μ„Έμ…˜ 관리: μ‚¬μš©μž μ„Έμ…˜μ„ κ΄€λ¦¬ν•˜μ—¬ μƒνƒœλ₯Ό μœ μ§€.
  5. νŠΈλžœμž­μ…˜ 관리: λ°μ΄ν„°λ² μ΄μŠ€ νŠΈλžœμž­μ…˜μ„ κ΄€λ¦¬ν•˜μ—¬ 데이터 일관성을 μœ μ§€.

μ˜ˆμ‹œ

  • Apache Tomcat
  • Jetty
  • JBoss (WildFly)
  • IBM WebSphere
  • Oracle WebLogic
ν΄λΌμ΄μ–ΈνŠΈ ----> μ›Ή μ„œλ²„ (Nginx) ----> μ›Ή μ• ν”Œλ¦¬μΌ€μ΄μ…˜ μ„œλ²„ (Tomcat) ----> 동적 μ½˜ν…μΈ  λ°˜ν™˜

μ£Όμš” 차이점

ν•­λͺ© Web Server (WS) Web Application Server (WAS)
μ£Όμš” μ—­ν•  정적 μ½˜ν…μΈ  제곡 동적 μ½˜ν…μΈ  생성 및 λΉ„μ¦ˆλ‹ˆμŠ€ 둜직 처리
처리 μš”μ²­ HTTP μš”μ²­μ„ μ²˜λ¦¬ν•˜κ³  정적 파일 제곡 λΉ„μ¦ˆλ‹ˆμŠ€ λ‘œμ§μ„ μ²˜λ¦¬ν•˜κ³  동적 μ½˜ν…μΈ  생성
기술 μŠ€νƒ HTML, CSS, JavaScript, 이미지 λ“± μ„œλΈ”λ¦Ώ, JSP, EJB, Spring λ“±
λΆ€ν•˜ λΆ„μ‚° 지원 일뢀 지원, 주둜 μ›Ή μ„œλ²„κ°€ λ‹΄λ‹Ή
μ„Έμ…˜ 관리 μ œν•œμ  μ„Έμ…˜ 및 μƒνƒœ 관리 κ°€λŠ₯
νŠΈλžœμž­μ…˜ 관리 μ—†μŒ 지원
μ˜ˆμ‹œ Apache HTTP Server, Nginx, IIS Tomcat, Jetty, JBoss, WebSphere, WebLogic

 

κ²°λ‘ 

  • μ›Ή μ„œλ²„(WS)λŠ” 주둜 정적인 μ½˜ν…μΈ λ₯Ό μ œκ³΅ν•˜λŠ” 역할을 ν•˜λ©°, HTTP μš”μ²­μ„ λ°›μ•„μ„œ 정적 νŒŒμΌμ„ ν΄λΌμ΄μ–ΈνŠΈμ— λ°˜ν™˜ν•œλ‹€.
  • μ›Ή μ• ν”Œλ¦¬μΌ€μ΄μ…˜ μ„œλ²„(WAS)λŠ” 동적인 μ›Ή μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ μ‹€ν–‰ν•˜κ³  λΉ„μ¦ˆλ‹ˆμŠ€ λ‘œμ§μ„ μ²˜λ¦¬ν•˜λŠ” 역할을 ν•©λ‹ˆλ‹€. WASλŠ” λ°μ΄ν„°λ² μ΄μŠ€μ™€ μƒν˜Έμž‘μš©ν•˜κ³  동적 μ½˜ν…μΈ λ₯Ό μƒμ„±ν•˜μ—¬ ν΄λΌμ΄μ–ΈνŠΈμ— μ‘λ‹΅ν•œλ‹€.

λŒ“κΈ€