Django 시작하기

Google Cloud에서 실행되는 Django 앱은 모든 Google 제품을 구동하는 동일한 인프라에서 실행되므로 일반적으로 가변적인 워크로드에 맞춰 애플리케이션의 기능이 향상됩니다.

호스팅 플랫폼

Google Cloud에서 Django를 배포할 때 사용할 수 있는 옵션은 다음과 같습니다.

Django 배포 옵션 시작하기
App Engine 표준 환경
  • App Engine 표준 환경에서 Django 실행
  • App Engine 가변형 환경
  • App Engine 가변형 환경에서 Django 실행
  • Cloud Run
  • Cloud Run에서 Django 실행
  • <atrack-type="python" class="internal" l10n-attrs-original-order="href,track-type,track-name,track-metadata-position,class" l10n-encrypted-href="dlnuefm4z6sPp/NdSVdtpqUhEY2wTqvCjTxgiRnIfdho1ysmt/qsHb/VTKsWT1YC" track-metadata-position="body" track-name="internalLink">VS Code용 Cloud Code로 Cloud Run에서 Django 실행</atrack-type="python">
  • IntelliJ용 Cloud Code로 Cloud Run에서 Django 실행
  • Google Kubernetes Engine(GKE)
  • Google Kubernetes Engine에서 Django 실행
  • Compute Engine
  • Google Cloud Marketplace의 Django
  • 이러한 플랫폼의 차이점에 대한 자세한 내용은 Google Cloud의 앱 호스팅 옵션을 참조하세요.

    데이터베이스

    Django 객체 관계형 매퍼(ORM)는 SQL 관계형 데이터베이스에서 가장 잘 작동합니다.

    새 프로젝트를 시작하는 경우 Cloud SQL을 선택하는 것이 좋습니다. Google에서 관리 및 확장하며, Django에서 지원하는 PostgreSQL 또는 MySQL 데이터베이스를 배포할 수 있습니다.

    python-spanner-django 데이터베이스 백엔드를 사용하여 Django를 Cloud Spanner 백엔드로 배포할 수 있습니다.

    때로는 어떠한 이유로 NoSQL 데이터베이스를 사용합니다. Django ORM을 NoSQL 데이터베이스와 함께 사용하는 것은 몇 가지 제한사항이 있지만 가능합니다. 그러나 Django에서 공식적으로 지원되지 않습니다. App Engine을 사용하는 경우 djangae, Cloud Run을 사용하는 경우 django-gcloud-connectors를 포함한 다양한 커뮤니티 지원 백엔드 커넥터 Datastore가 있습니다. MongoDB를 사용하기로 선택한 경우 Cloud Marketplace를 사용하여 배포하고 직접 관리하거나 mLab에서 제공하는 관리형 MongoDB 호스팅 서비스를 사용할 수 있습니다.

    캐시

    MemorystoreMemcacheRedis용 관리형 호스팅 옵션을 제공합니다. App Engine의 경우 Memcache에서 마이그레이션 가이드를 참조하세요.

    태스크 큐

    Pub/Sub는 이벤트 기반 시스템에 메시징을 제공하고, Tasks는 비동기 태스크 실행을 제공합니다. App Engine의 경우 태스크 큐에서 마이그레이션 가이드를 참조하세요.

    Python용 Pub/Sub 태스크 큐(psq)로 Pub/Sub를 사용하여 태스크를 큐에 추가하는 구현 예시를 확인할 수 있습니다.

    Cloud Tasks를 통한 태스크 큐 지원은 다양한 커뮤니티 지원 패키지를 통해 사용할 수 있습니다.