App Engine 표준 환경 런타임

App Engine 표준 환경에는 2세대의 런타임 환경이 있습니다. 2세대 런타임은 App Engine의 기능을 크게 향상시키고 1세대 런타임의 일부 한계를 없애줍니다. 이 페이지에서는 1세대 런타임과 2세대 런타임의 유사점과 차이점을 설명합니다.

2세대 1세대
지원 언어 Python 3
자바 11+
Node.js
PHP 7/8
Ruby
Go 1.12+
Python 2.7
자바 8
PHP 5.5
Go 1.11
언어 확장 프로그램 및 시스템 라이브러리 지원 모든 확장 프로그램 또는 라이브러리 Python 2.7, PHP 5.5: 허용 목록을 사용하는 확장 프로그램 및 라이브러리
자바 8, Go 1.11: 확장 프로그램 또는 라이브러리
지원되는 API

모든 기능을 갖춘 Google Cloud 서비스에 액세스하려면 오픈소스 Cloud 클라이언트 라이브러리를 사용하세요.

Python 3, 자바 11 이상 또는 Go 1.12 이상 런타임으로 업데이트할 때 여러 App Engine 번들 서비스를 계속 사용할 수 있습니다. 자세한 내용은 Python 3, 자바 11 이상Go 1.12 이상 가이드를 참조하세요.

Cloud 클라이언트 라이브러리 및 App Engine 번들 서비스
대용량 blob 파일 스토리지의 경우 Cloud Storage를 사용하거나 App Engine Blobstore API 번들 서비스를 계속 사용합니다.
App Engine Blobstore API
데이터 지속성의 경우 Datastore 모드의 Firestore 및 관계형 스토리지에 Cloud SQL을 사용합니다. 또는 App Engine Datastore API 번들 서비스를 계속 사용할 수 있습니다.
App Engine Datastore API
지연된 태스크를 실행하려면 Deferred API(Python), DeferredTask API(자바), Delay API(Go)를 계속 사용합니다. PHP 사용자는 Task Queues API 번들 서비스를 통해 지연된 실행을 계속 지정할 수 있습니다. 또는 Cloud Tasks를 사용하여 지연 기능을 구현할 수 있습니다.
App Engine Deferred API
이미지를 처리할 때는 Cloud Storage를 사용하여 이미지를 직접 제공하거나 타사 콘텐츠 전송 네트워크(CDN) 또는 이미지 처리 라이브러리를 사용할 수 있습니다.
또는 App Engine Images API 번들 서비스를 계속 사용할 수 있습니다.
App Engine Images API
인바운드 또는 아웃바운드 메시징의 경우 App Engine Mail API 번들 서비스를 계속 사용합니다. 또는 아웃바운드 메시징의 경우 SendGrid, Mailgun 또는 Mailjet과 같은 타사 메일 제공업체를 이용할 수 있습니다.
현재 인바운드 메시지에 권장되는 타사 대안은 사용할 수 없습니다.
App Engine Mail API
앱 데이터를 캐싱하려는 경우 Memorystore 인스턴스를 만들고 서버리스 VPC 액세스를 사용하여 인스턴스를 앱에 연결합니다. 또는 App Engine Memcache API 번들 서비스를 계속 사용합니다. App Engine Memcache API
검색 가능한 문서 색인의 경우 Compute Engine에서의 Elasticsearch와 같은 전체 텍스트 검색 데이터베이스를 호스팅하고 서비스에서 이 데이터베이스에 액세스합니다. Google Cloud Marketplace는 또한 SaaS 기반 Elasticsearch 서비스를 제공합니다. 또는 App Engine Search API 번들 서비스를 계속 사용합니다. App Engine Search API
외부 태스크를 실행하려면 push 및 pull 큐의 App Engine Task Queues API 번들 서비스를 사용하거나 push 큐를 Cloud Tasks로 마이그레이션합니다.
그리고 큐를 Pub/Sub로 가져옵니다.
App Engine Task Queue API
사용자 인증의 경우 App Engine Users API 번들 서비스를 계속 사용하거나 사용자 인증 옵션에 설명된 인증 서비스로 마이그레이션합니다. App Engine Users API
외부 네트워크 액세스 전체 액세스 Python 2.7, PHP 5.5: URL Fetch API를 통해
자바 8, Go 1.11: 전체 액세스
파일 시스템 액세스 /tmp에 대한 읽기/쓰기 액세스 Python 2.7, PHP 5.5: 없음
자바 8, Go 1.11: /tmp에 대한 읽기/쓰기 액세스
언어 런타임 수정되지 않은 오픈소스 런타임 App Engine용으로 수정됨
격리 메커니즘 gVisor 기반 컨테이너 샌드박스 gVisor 기반 컨테이너 샌드박스

App Engine 1세대 런타임 지원

App Engine 1세대 런타임 지원이 종료되었습니다. Google에서는 지원이 종료된 런타임 환경의 구성요소에 더 이상 보안 업데이트나 패치를 적용하지 않습니다.

1세대 런타임 지원 요금제에 대한 자세한 내용은 기존 런타임 지원런타임 수명 주기를 참조하세요.

1세대 런타임과 2세대 런타임의 유사점

  • 트래픽 급증에 대응하기 위해 거의 즉각적으로 확장
  • 애플리케이션이 동일한 빌드 프로세스를 사용하여 빌드됨
  • GA 서비스의 SLA가 동일함
  • 동일한 gcloud 명령 지원 및 동일한 GCP Console 인터페이스
  • 무료 등급

1세대와 2세대 런타임 마이그레이션 리소스

마이그레이션 가이드는 장기적 지원 페이지에서 각 언어 런타임에 대해 사용할 수 있습니다.