Firebase용 Cloud Functions

Firebase용 Cloud Functions는 백그라운드 이벤트, HTTPS 요청, Admin SDK 또는 Cloud Scheduler 작업에 의해 트리거된 이벤트에 대한 응답으로 백엔드 코드를 자동으로 실행할 수 있는 서버리스 프레임워크입니다. 내 Google Cloud 인프라에 저장되는 JavaScript, TypeScript 또는 Python 코드 애플리케이션을 실행할 수 있습니다 Google Kubernetes Engine에서 구성할 수 있습니다

이미 Google Cloud에서 Cloud Functions를 사용하고 계신가요? Firebase를 사용하면 얼마나 유용할지 자세히 알아보세요.

시작하기 사용 사례

주요 기능

Firebase 기능을 통합하고 Google Cloud

작성하는 함수는 다양한 Firebase 및 Google Cloud 기능, Firebase 인증 트리거 Cloud Storage 트리거에 추가되었습니다.

Admin SDK와 Cloud Functions를 함께 사용하여 여러 Firebase 기능을 통합하고, 자체 웹훅을 작성하여 타사 서비스와 통합합니다. Cloud Functions는 상용구를 최소화합니다. 컨테이너 내에서 Firebase와 Google Cloud를 함수를 사용하세요.
유지보수 불필요 다음 명령어를 사용하여 JavaScript, TypeScript 또는 Python 코드를 Google 서버에 배포하세요. 명령어를 실행합니다 코드가 배포되면 Firebase에서 사용자의 사용량 패턴에 맞게 자동으로 컴퓨팅 리소스의 크기를 조절합니다. 사용자 인증 정보, 서버 구성, 신규 서버 프로비저닝, 이전 서버 해제 등의 작업이 불필요합니다.
로직을 비공개로 안전하게 유지 대부분의 경우 개발자는 클라이언트 측에서 조작할 수 없도록 서버에서 애플리케이션 로직을 제어하는 것을 선호합니다. 또한 코드의 리버스 엔지니어링을 허용하지 않는 것이 좋을 수도 있습니다. Cloud Functions는 클라이언트로부터 완전히 격리되므로 비공개로 설정하여 항상 내가 원하는 대로 작업을 수행합니다.

기본 원리

함수를 작성하고 배포하면 Google 서버에서 즉시 함수를 관리하기 시작합니다. HTTP 요청을 사용하여 함수를 직접 실행할 수 있습니다. Admin SDK 또는 예약된 작업 또는 백그라운드 함수의 경우 Google 서버는 이벤트를 리슨하고 이벤트가 발생하면 함수를 실행합니다. 시작됩니다

부하가 증가하거나 감소하면 Google에서 함수를 실행하는 데 필요한 가상 서버 인스턴스의 개수를 신속하게 조절하여 대응합니다. 각 함수는 별도로 자체 구성 및 환경에서 실행됩니다.

백그라운드 함수의 수명 주기

  1. 이벤트 공급자 (예: Cloud Firestore), 함수가 실행되어야 하는 조건을 정의합니다. 실행할 수 있습니다
  2. 함수를 배포하는 경우
    1. Firebase CLI는 함수 코드의 .zip 보관 파일을 만듭니다. Cloud Storage 버킷에 업로드됩니다. gcf-sources) 전 Cloud FunctionsArtifact Registry 저장소를 만듭니다. gcf-artifacts)을 사용하세요.
    2. Cloud Build: 함수 코드를 검색하고 함수를 빌드합니다. 있습니다. 다음에서 Cloud Build 로그를 확인할 수 있습니다. Google Cloud 콘솔.
    3. 빌드된 함수 코드의 컨테이너 이미지는 프로젝트의 비공개 Artifact Registry 저장소 (이름: gcf-artifacts) 새 함수가 롤아웃됩니다.
  3. 이벤트 공급자가 함수의 조건과 일치하는 이벤트를 생성하면 코드가 호출됩니다.
  4. 함수가 다수의 이벤트를 처리 중인 경우 Google에서 작업을 신속하게 처리하기 위해 인스턴스를 더 만듭니다. 함수가 유휴 상태면 인스턴스가 정리됩니다.
  5. 업데이트된 코드를 배포하여 함수를 업데이트하면 이전 버전의 인스턴스가 빌드 아티팩트와 함께 정리되고 Artifact Registry, 새 인스턴스로 대체되었습니다.
  6. 함수를 삭제하면 모든 인스턴스 및 ZIP 보관 파일이 정리되어 Artifact Registry에 관련 빌드 아티팩트가 함께 표시됩니다. 함수와 이벤트 공급자 간의 연결이 삭제됩니다.

백그라운드 함수가 있는 이벤트를 리스닝하는 것 외에도 HTTP 요청 또는 클라이언트의 호출을 사용하여 직접 함수를 호출할 수 있습니다. 또한 Cloud Build, 정해진 일정에 따라 또는 Admin SDK를 통해 태스크 함수를 큐에 추가합니다.

구현 경로

Cloud Functions 설정 Firebase CLI 설치 및 초기화 Firebase 프로젝트에서 Cloud Functions입니다.
함수 작성 JavaScript 코드, TypeScript 코드, Python 코드 작성 Firebase의 이벤트를 처리하고 서비스, Google Cloud 서비스 또는 기타 이벤트 제공자에 대한 액세스를 허용할 수 있습니다.
함수 테스트 로컬 에뮬레이터를 사용하여 함수를 테스트합니다.
배포 및 모니터링 프로젝트에 결제를 사용 설정하고 다음을 사용하여 함수를 배포합니다. Firebase CLI 이 Google Cloud 콘솔 로그를 볼 수 있습니다

다음 단계