internet
호스팅이란.
웹 애플리케이션을 인터넷에 공개하는 호스팅 방식과 배포 구성 요소
호스팅은 웹사이트나 애플리케이션의 파일과 서버 프로그램을 인터넷에서 접근 가능한 환경에 배치해 운영하는 서비스입니다.
🏠 호스팅이 제공하는 것
- 컴퓨팅 자원: 애플리케이션을 실행할 CPU와 메모리
- 스토리지: HTML, JavaScript, 이미지, 데이터 등을 보관할 공간
- 네트워크: 외부 요청을 받을 공인 주소와 대역폭
- 운영 기능: 배포, 로그, 모니터링, 백업, TLS 인증서 관리
서비스마다 제공 범위가 다르므로 서버, 데이터베이스, 파일 저장소를 각각 선택할 수도 있습니다.
🧩 주요 호스팅 방식
- 정적 호스팅: 미리 생성한 HTML, CSS, JavaScript 파일을 CDN으로 제공합니다.
- 서버 호스팅: 가상 머신이나 컨테이너에서 웹 서버와 애플리케이션을 직접 실행합니다.
- 관리형 플랫폼(PaaS): 코드나 저장소를 연결하면 빌드, 배포, 확장을 플랫폼이 관리합니다.
- 서버리스: 요청이 들어올 때 함수를 실행하며 사용량에 따라 자원을 할당합니다.
🚀 배포 흐름
- 소스 코드를 빌드해 실행 가능한 결과물을 만듭니다.
- 결과물을 호스팅 환경에 업로드하거나 저장소와 연결합니다.
- 환경 변수와 런타임 설정을 구성합니다.
- 도메인의 DNS 레코드를 호스팅 서비스에 연결합니다.
- HTTPS, 로그, 장애 알림을 확인합니다.
⚖️ 선택할 때 확인할 것
- 정적 사이트인지 서버 렌더링이나 API가 필요한지
- 예상 트래픽과 자동 확장이 필요한지
- 배포 지역과 CDN 지원 범위
- 데이터베이스, 파일 저장소 등 외부 서비스 구성
- 비용, 장애 대응, 서비스 종속성
프론트엔드 프로젝트라도 SSR, API Routes, 이미지 최적화 기능을 사용한다면 단순한 정적 파일 호스팅만으로는 부족할 수 있습니다.
🔗 참고 자료
- MDN: What is a web server? — 웹 서버와 호스팅의 역할을 설명한다.
- MDN: CDN — 콘텐츠 전송 네트워크를 요약한다.
- CDN (MDN Glossary) — CDN의 역할과 장단점을 설명한다.
