Cloud Functions 베타

클라우드 서비스를 구축하고 연결하기 위한 서버리스 환경

무료로 사용해 보기 문서 보기

Google 인프라의 서버리스 애플리케이션

클라우드 컴퓨팅 덕분에 어디서든 수신된 이벤트에 따라 로직이 요청 시 가동되는 완전 서버리스 컴퓨팅 모델이 탄생하였습니다. 코드가 실행되는 동안에만 약 100밀리초 단위로 청구되는 바이트 크기의 비즈니스 로직으로 애플리케이션을 구축하세요. 인프라 관리 없이 규모를 불문한 서비스를 사용자에게 제공할 수 있습니다

거대 단일 서비스가 아닌 초소형 서비스

개발자의 민첩성은 한 가지 작업에 초점을 맞춘 작은 독립적 기능 단위로 구성된 시스템 구축에서 비롯됩니다. Cloud Functions에서는 전체 애플리케이션, 컨테이너, VM 수준이 아닌 단일 함수 수준에서 서비스를 구축하고 배포할 수 있습니다.

클라우드 서비스 연결 및 확장

Cloud Functions는 클라우드 서비스의 연결 및 확장 코드를 작성할 수 있도록 로직의 연결 레이어를 제공합니다. Cloud Storage로 파일 업로드, Cloud Pub/Sub 주제의 수신 메시지, Stackdriver Logging의 로그 변경사항 또는 Firebase의 모바일 관련 이벤트 등 이벤트를 확인하고 응답하세요. Cloud Functions를 사용하면 기존 클라우드 서비스를 확장하고 이벤트 기반 코드로 점점 늘어나는 사용 사례를 처리할 수 있습니다.

서버리스 환경

Cloud Functions는 환경 내 이벤트에 따라 요청 시 임시로 가동되고 다시 중단됩니다. 함수가 실행될 때만 약 100밀리초 단위로 측정된 요금을 지불하고 함수가 완료된 후에는 요금을 지불할 필요가 없습니다.

모바일 지원

모바일 앱 개발자가 Google Cloud의 모바일 플랫폼인 Firebase에서 바로 Cloud Functions를 사용할 수 있습니다. Firebase는 기본적으로 Firebase 애널리틱스, Realtime Database, Authentication, Storage 등에서 수신된 Cloud Functions가 응답할 수 있는 이벤트를 내보냅니다.

코드 추가

Google이 사용자를 대신해 인프라, 운영체제, 런타임 환경을 모두 처리해 주는 완전 관리형 서버리스 환경에서 작업을 실행하세요. 각 Cloud Functions는 저마다 분리된 보안 실행 컨텍스트에서 실행되고 자동으로 확장되며 다른 함수와는 독립적인 수명 주기를 가집니다.

개방형 및 익숙함

Cloud Functions는 자바스크립트로 작성되며 표준 Node.js 런타임 환경에서 실행됩니다. 운영체제를 비롯한 그 무엇에도 소유권을 상정하지 않아 플랫폼에 가져온 네이티브 라이브러리 등의 함수가 정상적으로 작동합니다. Node.js Foundation, Google 동료들, 커뮤니티, 오픈소스 V8 엔진과 함께 긴밀히 협업하는 개방형 개발자 환경을 경험하세요.

Cloud Functions 사용 사례

모바일 백엔드
앱 개발자용 Google 모바일 플랫폼, Firebase를 사용해 Cloud Functions로 모바일 백엔드를 확장하세요. Firebase 애널리틱스, Realtime Database, Authentication, Storage에서 수신된 이벤트를 확인하고 응답하세요.
API 및 초소형 서비스
신속하게 구축하고 자동으로 확장되는 느슨하게 연결된 경량의 로직 비트로 애플리케이션을 만드세요. 함수가 이벤트 기반으로 작동하거나 HTTP/S를 통해 직접 호출됩니다.
데이터 처리/ETL
파일 생성, 변경 또는 삭제 등 Cloud Storage 이벤트를 확인하고 응답하세요. Cloud Functions를 사용하면 이미지 처리, 동영상 트랜스코딩, 데이터 검증 또는 변환, 인터넷 서비스 호출이 가능합니다.
Webhook
간단한 HTTP 트리거를 통해 HTTP/S 요청을 전송하는 제3자 시스템에서 수신된 이벤트에 응답하세요.
IoT
무수히 많은 기기에서 Cloud Pub/Sub으로 데이터를 스트리밍해 Cloud Functions를 자동으로 실행하고 데이터를 처리, 변환, 저장한다고 상상해 보세요. Cloud Functions를 사용하면 완전한 서버리스 방식으로 이러한 상상이 실현됩니다.

"작업 관리를 Slack과 통합하여 Meetup의 개발자 생산성을 개선하고 싶었습니다. Google Cloud Functions 덕분에 통합이 새 HTTP 함수를 게시하는 것만큼이나 간단해졌습니다. 지금은 서버나 VM은 건드리지도 않은 채 조직 전체에 도구를 배포하고 있습니다."

— Jose Rodriguez Meetup, Engineering Effectiveness 리드

Cloud Functions 기능

Cloud Pub/Sub 트리거
Cloud Functions는 Cloud Pub/Sub 주제의 메시지로 트리거할 수 있으며 같은 주제를 여러 함수가 구독할 수 있습니다.
Cloud Storage 트리거
Cloud Functions를 Cloud Storage 버킷의 변형 이벤트와 연결할 수 있습니다. 버킷의 파일이 생성, 삭제 또는 수정될 때마다 함수가 실행됩니다.
Firebase 트리거
모바일 개발자는 Firebase와 Cloud Functions 간의 완벽한 통합을 경험하게 될 것입니다. 여기에서 Firebase를 통해 노출되는 이벤트를 확인하세요.
HTTP/S 호출
HTTP 트리거로 배포된 함수에는 정규화된 도메인과 보안 통신을 위해 동적으로 생성되는 TLS 인증서가 함께 제공됩니다.
GitHub/Bitbucket
Cloud Source Repositories를 사용하면 코드를 업로드하거나 버전을 직접 관리할 필요 없이 Github 또는 Bitbucket 저장소에서 바로 배포할 수 있습니다.
로그 기록, 모니터링, 디버깅
Cloud Functions에서 내보낸 로그가 자동으로 Stackdriver Logging에 기록되고 성능 원격 측정 결과가 Stackdriver Monitoring에 기록됩니다. Stackdriver Debugger를 사용하면 프로덕션 단계에서 코드 동작을 조사할 수 있습니다.
자동 종속 항목 해결
배포를 위해 모든 함수를 종속 항목과 함께 패키지화할 필요가 없습니다. 소스 코드와 매니페스트만 전송하면 나머지는 자동으로 처리됩니다.

Cloud Functions 가격

Google Cloud Functions에서는 호출, 컴퓨팅 시간, 발신 데이터에 요금이 청구됩니다. 동일 지역의 다른 Google API와의 수신 및 발신 데이터는 무료입니다. 자세한 가격 정보는 가격 책정 가이드를 참조하세요.

  무료 월 제한 유료 무료 제한 초과 시(단위 당) 가격 단위
호출* 호출 2백만 개 $0.40 호출 1백만 개당
컴퓨팅 시간 400,000GB-초 $0.0000025 GB-초당
200,000GHz 초 $0.0000100 GHz-초당
발신 데이터(송신) 5GB $0.12 GB당
수신 데이터(송신) 무제한 무료 GB당
동일 지역의 Google API 발신 데이터 무제한 무료 GB당

* 백그라운드 및 HTTP 함수 포함

USD 외의 통화로 지불하는 경우 Cloud Platform SKU에 해당 통화로 표기된 가격이 적용됩니다.
베타: Cloud Functions의 베타 출시 버전입니다. 이 기능은 SLA 또는 지원 중단 정책이 적용되지 않으며 이전 버전과 호환되지 않을 수 있습니다.