Le app Django in esecuzione su Google Cloud utilizzano la stessa infrastruttura alla base di tutti i prodotti Google, il che in genere migliora la capacità dell'applicazione di adattarsi a un carico di lavoro variabile.
Piattaforme di hosting
Queste sono le opzioni disponibili per eseguire il deployment di Django su Google Cloud:
| Opzione di deployment di Django | Inizia |
|---|---|
| Ambiente standard di App Engine | |
| Ambiente flessibile di App Engine | |
| Cloud Run |
|
| Google Kubernetes Engine (GKE) | |
| Compute Engine |
Per ulteriori dettagli sulle differenze tra queste piattaforme, consulta Opzioni di App Hosting su Google Cloud.
Database
Il mapper ORM (Object-Relational Mapper) di Django funziona meglio con un database relazionale SQL.
Se stai iniziando un nuovo progetto, Cloud SQL è un'ottima scelta. Puoi eseguire il deployment di un database PostgreSQL o MySQL gestito e scalato da Google e supportato da Django.
Puoi eseguire il deployment di Django con un backend Spanner utilizzando il backend del database python-spanner-django.
A volte esistono validi motivi per utilizzare un database NoSQL. È possibile utilizzare il mapper ORM di Django con un database NoSQL, con alcune limitazioni, ma non è supportato ufficialmente da Django. Esistono diversi connettori di backend supportati dalla community per Datastore, tra cui djangae se utilizzi App Engine o django-gcloud-connectors se utilizzi Cloud Run. Se scegli di utilizzare MongoDB, puoi eseguire il deployment tramite Cloud Marketplace e gestire in autonomia oppure puoi utilizzare il servizio di hosting di MongoDB fornito da mLab.
Cache
Memorystore offre opzioni di hosting gestito sia per Memcache che per Redis. Per App Engine, consulta la guida per la migrazione da Memcache.
Inserimento in coda delle attività
Pub/Sub offre la messaggistica per i sistemi basati su eventi, mentre Google Tasks offre l'esecuzione asincrona delle attività. Consulta la guida per scegliere tra Google Tasks e Pub/Sub. Per App Engine, consulta la guida per la migrazione dalle code di attività.
Il supporto per la gestione delle code di attività tramite Cloud Tasks è disponibile tramite una serie di pacchetti supportati dalla community.