Firebase Hosting는 다음과 같은 서버리스 컴퓨팅 옵션과 통합됩니다. Cloud Functions for Firebase 및 Cloud Run. 다음으로 Firebase Hosting 사용 이러한 옵션을 사용하면 애플리케이션이 실행될 수 있도록 HTTPS 요청을 함수와 컨테이너화된 앱을 안전한 관리형 환경에서 실행할 수 있습니다.
Cloud Functions for Firebase: 애플리케이션을 작성하고 배포합니다. 함수를 호출합니다. 이 코드는 특정 트리거에 응답하는 백엔드 코드입니다. 그런 다음 Firebase Hosting: HTTPS 요청을 전달하여 함수를 트리거할 수 있습니다. 실행할 수 있습니다
Cloud Run: 애플리케이션을 작성하고 배포합니다. 컨테이너 이미지로 패키징되어 있습니다 그런 다음 Firebase Hosting을(를) 사용하면 HTTPS 요청을 전달하여 컨테이너화된 앱이 실행되도록 트리거할 수 있습니다.
사용 사례
Firebase Hosting와 함께 서버리스 컴퓨팅 옵션을 사용하는 방법
동적 콘텐츠 제공 — Hosting 사이트에 정적 콘텐츠를 제공하는 것 외에도 서버 측 로직을 실행하는 함수 또는 컨테이너화된 앱에서 동적으로 생성된 응답을 제공할 수 있습니다.
예를 들어 URL 패턴(예:
/blog/<blog-post-id>
)을 함수에 연결하고, 함수에서는 URL의 블로그 게시물 ID 매개변수를 사용하여 데이터베이스의 콘텐츠를 동적으로 검색할 수 있습니다.REST API 빌드 — 함수를 사용하여 마이크로서비스 API를 생성할 수 있습니다.
예를 들어 함수는 사용자 웹사이트의 로그인 기능을 처리할 수 있습니다. 웹사이트가
/
에 호스팅되는 동안/api
에 대한 요청은 마이크로서비스 API로 리디렉션됩니다. 이에 관한 예시는 오픈소스 샘플을 확인하세요.동적 콘텐츠 캐시 — 글로벌 CDN에 동적 콘텐츠의 캐싱을 구성할 수 있습니다.
예를 들어 함수가 주기적으로 새 콘텐츠만 생성한다면 생성된 콘텐츠를 짧은 시간 동안 캐시하여 앱의 속도를 높일 수 있습니다. 또한 콘텐츠가 트리거된 함수나 컨테이너화된 앱을 통해서가 아닌 CDN에서 제공되므로 실행 비용을 줄일 수 있습니다.
단일 페이지 앱 사전 렌더링 - 동적
meta
태그를 만들어 검색엔진 최적화를 개선하고 다양한 소셜 네트워크에서 공유를 최적화할 수 있습니다. 자세히 알아보려면 이 동영상을 보거나 오픈소스 샘플을 확인하세요.
서버리스 옵션 선택
Cloud Functions for Firebase 및 Cloud Run와 Firebase Hosting는 안전한 완전 관리형 자동 확장 기능을 제공합니다. 서버리스 환경으로, 다양한 사용 사례에 두 가지 옵션을 활용할 수 있습니다. 원하는 수준의 맞춤 구성을 설정할 수 있습니다.
서버리스 옵션 중 하나를 사용하는 경우 서버와 같은 위치에 배치하는 것이 가장 좋습니다. 다음 리전 중 하나에 배포하여 Firebase Hosting용
us-west1
us-central1
us-east1
europe-west1
asia-east1
다음 표에는 사용 시 고려해야 할 몇 가지 기본 사항이 설명되어 있습니다. Cloud Functions for Firebase 및 Cloud Run 비교. 이 할당량, 한도, 측정항목은 각 제품의 상세 문서를 참조하세요. (Cloud Functions for Firebase 또는 Cloud Run)
고려사항 | Cloud Functions for Firebase | Cloud Run |
---|---|---|
설정 | Firebase CLI는 여러 태스크를 다음에서 단일 명령어로 묶습니다. 빌드 및 배포에 이르기까지 다양합니다 | 컨테이너는 더 많은 맞춤설정 옵션을 제공하므로 설정, 빌드, 배포 태스크에 별도의 단계가 필요합니다. |
런타임 환경 | Node.js가 필요하지만 사용할 Node.js의 버전을 지정할 수 있습니다. | 컨테이너를 빌드할 때 런타임 환경을 지정합니다. |
언어 및 프레임워크 지원 | 자바스크립트 및 TypeScript Express.js와 같은 웹 프레임워크가 지원됩니다. |
Go, Node.js, Python, 자바 등을 포함하여 Dockerfile에서 지원하는 모든 언어 각 언어에 대한 웹 프레임워크가 지원됩니다. |
Hosting 요청 제한 시간 | 60초(아래 참고 참조) | 60초(아래 참고 참조) |
동시 실행 | 함수 인스턴스당 요청 1개 (인스턴스당 동시 실행 없음) |
컨테이너 인스턴스당 동시 요청 최대 1,000개 |
결제 | Cloud Functions 사용량
무료 사용 할당량이지만 Cloud Billing 계정이 필요합니다. 자세한 내용은 Firebase FAQ |
Cloud Run 사용량 +
Container Registry 스토리지
무료 사용 할당량이지만 Cloud Billing 계정이 필요합니다. |