Google Cloud Functions에 .NET 도입
Vinod Ramachandran
Senior Product Manager
Jon Skeet
Staff Developer Relations Engineer
* 본 아티클의 원문은 2020년 11월 20일 Google Cloud 블로그(영문)에 게재되었습니다.
Cloud Functions는 사용자가 서버 또는 런타임 환경을 관리할 필요 없이 이벤트에 응답하는 것을 유일한 목적으로 하는 독립 실행형 함수를 만들 수 있는 Google Cloud의 서비스로서의 기능 플랫폼입니다. Cloud Functions는 서버리스 애플리케이션, 모바일 또는 IoT 백엔드, 실시간 데이터 처리 시스템, 동영상/이미지/감정 분석뿐만 아니라 챗봇 또는 가상 어시스턴트 등에도 적합합니다.
이제 Windows, Mac, Linux용 오픈소스 플랫폼이자 무료로 사용할 수 있는 교차 플랫폼인 .NET Core 3.1이 Cloud Functions에 도입됩니다. 이번 통합으로 .NET용 함수 프레임워크에서 자주 이용하는 .NET Core 3.1 런타임을 사용해 클라우드 함수를 작성할 수 있는 관용적인 개발자 환경이 구축됩니다.
현재 미리보기로 제공되는 .NET용 Cloud Functions에서는 .NET Core 3.1을 사용해 비즈니스에 중요한 애플리케이션과 통합 레이어를 빌드하고 비공개 VPC 네트워크의 리소스에 액세스 가능한 완전 관리형 환경에 함수를 배포할 수 있습니다. .NET 함수는 부하에 따라 자동으로 확장됩니다. HTTP 이벤트에 응답하는 HTTP 함수는 물론 다양한 클라우드와 Pub/Sub, Cloud Storage, Firestore 등의 Google Cloud 서비스에서 발생하는 이벤트를 처리하는 CloudEvent 함수를 작성할 수 있습니다.
포팅 가능한 .NET 함수를 작성할 수 있는 서비스로서의 기능 오픈소스 프레임워크인 .NET용 함수 프레임워크를 사용해 함수를 개발할 수 있습니다. 함수 프레임워크를 사용해 함수를 개발하여 로컬에서 실행한 후 Cloud Functions 또는 다른 .NET 환경에 배포하세요.
.NET용 함수 프레임워크는 HTTP 함수와 CloudEvent 함수를 지원합니다. HTTP Cloud 함수는 작성하기가 매우 쉽습니다. 아래에서 웹훅/HTTP 사용 사례의 간단한 HTTP 함수를 확인할 수 있습니다.
.NET 런타임의 CloudEvent 함수는 업계 표준 CNCF CloudEvents에 응답합니다. 이 이벤트는 Pub/Sub, Cloud Storage, Firestore 등의 여러 Google Cloud 서비스에서 발생할 수 있습니다.
다음은 Pub/Sub에서 작동하는 간단한 CloudEvent 함수입니다.
VB 및 F# 지원
Cloud Functions .NET 런타임은 VB 및 F#도 지원합니다. 프로그래밍 모델이 완전히 동일하며 GitHub 저장소에서 예시를 확인할 수 있습니다. .NET 함수 프레임워크에는 명령줄 또는 Visual Studio에서 사용할 수 있는 템플릿 패키지가 포함되어 있습니다. 이 템플릿 역시 VB 및 F#를 지원합니다.
.NET용 Cloud Functions 사용해 보기
.NET용 Cloud Functions를 바로 사용해 볼 수 있습니다. 빠른 시작 가이드에서 첫 번째 함수를 작성하는 방법에 대해 알아보고 Google Cloud Platform 무료 체험판에서 사용해 보세요. 기술적 측면을 자세히 알아보려면 .NET 함수 프레임워크 둘러보기에 대해 다룬 존 스키트의 블로그도 참조하세요. .NET용 오픈소스 함수 프레임워크에 관심이 있다면 프로젝트를 살펴보고 참여해 보세요. 또한 런타임에 익숙해질 수 있도록 실습 가능한 Codelab도 준비되어 있습니다. 사용자 여러분이 작성할 .NET 함수를 기대하고 있겠습니다.