WB는 정적인 웹 리소스(HTML, CSS, 이밎 파일 등)를 서비스하는 데 특화된 서버 소프트웨어를 의미한다. 웹 서버는 클라이언트의 HTTP 요청을 받아 해당 요청에 맞는 정적 컨텐츠를 반환한다. 웹 서버는 주로 웹 애플리케이션의 비즈니스 로직을 처리하지 않고, 단순히 클라이언트에게 정적인 웹 페이지를 제공하는 데 사용된다.
웹 서버의 주요 기능과 특징은 다음과 같다.
1. 정적 컨텐츠 제공: 웹 서버는 HTML, CSS, JavaScript, 이미지, 비디오 등과 같은 정적인 웹 리소스를 클라이언트에게 전송한다. 이러한 리소스는 웹 애플리케이션의 비즈니스 로직과 상관없이 변하지 않는 고정된 내용이다.
2. HTTP 요청 처리: 클라이언트의 HTTP 요청을 받아 해당 요청에 맞는 파일이나 리소스를 찾아 반환한다. 일반적으로 웹 서버는 웹 브라우저와의 HTTP 통신을 처리한다.
3. 인증과 보안: 웹 서버는 SSL/TLS를 사용하여 암호화된 HTTPS 연결을 제공하여 보안을 강화할 수 있다. 또한 웹 서버는 간단한 인증 방법을 통해 클라이언트의 접근을 제어할 수도 있다.
4. 로드 밸런싱: 웹 서버는 여러 대의 서버로 분산된 트래픽을 처리하기 위해 로드 밸런싱을 수행할 수 있다. 이렇게 하면 웹 애플리케이션의 성능과 가용성을 향상시킬 수 있다.
5. Reverse Proxy: 웹 서버는 리버스 프록시로 동작하여 클라이언트의 요청을 웹 애플리케이션 서버로 전달하는 역할을 할 수도 있다. 이를 통해 웹 서버와 웹 애플리케이션 서버를 분리하여 웹 애플리케이션의 보안과 성능을 개선할 수 있다.대표적인 웹 서버로는 Nginx, Apache, Microsoft IIS 등이 있으며, 이들 웹 서버는 다양한 운영체제에서 실행되어 웹 애플리케이션과 정적인 웹 페이지를 제공하는데 사용된다.
- 주된 차이점은 역할과 처리하는 내용이다. WAS는 웹 애플리케이션의 비즈니스 로직과 데이터처리를 담당하여 WS는 정적인 웹 리소스를 서비스한다.
- WAS는 웹 서버의 기능도 가지고 있을 수 있으나, 보다 복잡하고 고급 기능을 제공하는 애플리케이션 서버이다.
- 웹 서버는 주로 리버스 프록시로 동작하여 요청을 WAS로 전달하거나 로드 밸런싱, 캐싱 등의 역할을 수행한다.
- WAS와 WS는 종종 함꼐 사용되어 웹 애플리케이션을 제공하는데 필요한 기능을 모두 제공한다.