http를 통해 웹 브라우저와 같은 클라이언트로부터 요청을 받아들이고, 요청에 따라 웹페이지, 이미지,동영상 등의 콘텐츠를 제공하는 역할.
웹 서버 선택 시에는 프로젝트의 요구사항, 인프라 환경, 개발팀의 경험, bill 등을 종합적으로 고려해야 한다.
오픈 소스 웹 서버 소프트웨어.
정적 파일 서빙, 리버스 프록시, 로드 밸런싱 등의 기능을 제공.
다양한 웹 애플리케이션(정적 파일, 동적 애플리케이션)을 배포할 수 있다.
높은 성능과 확장성을 가지고 있어 대규모 트래픽 처리에 적합하다.
오픈 소스 웹 서버 소프트웨어.
정적 파일 서빙, CGI, PHP 등의 기능을 제공.
다양한 웹 애플리케이션을 배포할 수 있다.
모듈화된 아키텍처로 기능을 확장할 수 있다.
Java 기반의 servlet 또는 JSP는 Apache Tomcat을 고려해야한다. 웹서버와 웹 애플리케이션 서버의 기능을 모두 제공하고, Java 웹 프레임워크도 함께 사용이 된다.
일반적으로 Tomcat은 Java 웹 애플리케이션 서버로 사용되며, Apache HTTP Server나 Nginx와 함께 사용되어 웹 서버와 애플리케이션 서버의 역할을 분담한다. 이러한 구성을 통해 정적 콘텐츠 서빙과 동적 콘텐츠 처리를 효율적으로 수행할 수 있다.
Tomcat은 가볍고 간편한 웹 애플리케이션 서버로, 개발 환경이나 소규모 프로젝트에서 손쉽게 사용할 수 있다. 또한, 대규모 프로덕션 환경에서도 안정적으로 운영될 수 있도록 다양한 기능과 튜닝 옵션을 제공한다.
GitHub에서 제공하는 정적 웹 사이트 호스팅 서비스.
주로 정적 웹 사이트(HTML, CSS, JavaScript)를 배포하는 데 사용.
Git 저장소에 푸시하는 것만으로 웹 사이트를 배포할 수 있어 간편하다.
동적 기능이나 서버 사이드 렌더링이 필요한 경우에는 제한적.
클라우드 기반의 플랫폼으로, 주로 Next.js, Gatsby, Nuxt.js 등의 프레임워크로 구축된 웹 애플리케이션을 배포하는 데 특화되어 있다.
정적 파일 및 서버 사이드 렌더링된 애플리케이션을 배포할 수 있다.
자동 확장, 글로벌 CDN, 지속적 배포 등의 기능을 제공.
개발자 경험(DX)이 우수하여 배포 과정을 단순화할 수 있다.
Caddy는 Go 언어로 작성된 오픈 소스 웹 서버 소프트웨어.
자동 HTTPS 구성, HTTP/2 지원, 간단한 구성 문법 등의 기능을 제공.
Let's Encrypt를 사용하여 SSL/TLS 인증서를 자동으로 발급하고 갱신할 수 있다.
리버스 프록시, 로드 밸런싱, Markdown 렌더링 등의 기능도 지원.
간결하고 직관적인 구성 파일 문법을 사용하여 웹 서버 설정을 쉽게 할 수 있다.
경량화되고 효율적인 웹 서버로, 개발 환경이나 소규모 프로젝트에 적합하다.