Pour stocker des données et des fichiers sur App Engine, vous pouvez utiliser les services Google Cloud ou tout autre service de stockage compatible avec votre langage et accessible depuis votre instance App Engine. Ces bases de données tierces peuvent être hébergées sur une autre solution cloud, sur site ou gérées par un fournisseur tiers.
Services de stockage Google Cloud
Pour les applications App Engine exécutées dans App Engine, nous recommandons l'un des services de stockage Google Cloud suivants :
- Firestore en mode Datastore pour stocker des données dans une base de données NoSQL
Cloud SQL pour MySQL pour stocker des données dans une base de données MySQL
Cloud SQL pour PostgreSQL pour stocker des données dans une base de données PostgreSQL
Cloud Storage pour lire et écrire des fichiers dans l'environnement d'exécution, ainsi que pour stocker et diffuser des fichiers statiques, tels que des films, des images ou tout autre contenu statique
Consultez la liste complète des produits Google Cloud Storage sur la page Produits Cloud Storage.
Autres fournisseurs cloud
Les applications App Engine peuvent se connecter à des bases de données externes hébergées sur d'autres clouds publics, à condition que ces serveurs de base de données et votre pare-feu soient correctement configurés pour accepter les connexions. Votre application App Engine se connecte via Internet par le biais de l'adresse IP publique du service externe.
Bases de données gérées par un fournisseur tiers
De nombreux fournisseurs proposent des services de bases de données gérées tels que mLab pour MongoDB, ou Redis Labs et ses solutions hébergées de mise en cache Redis. Ces fournisseurs gèrent l'hébergement, la configuration et la maintenance des bases de données. App Engine peut se connecter à ces services externes via Internet de la même manière qu'avec les autres clouds publics, par le biais de leur adresse IP publique.
Bases de données sur site
Si vous souhaitez permettre à votre application App Engine d'accéder à vos bases de données sur site existantes, vous pouvez configurer votre réseau interne et votre pare-feu afin d'attribuer une adresse IP publique à la base de données ou vous connecter via un VPN.
La configuration d'une solution Cloud VPN permet à votre application App Engine d'accéder à votre réseau local sans exposer directement le serveur de base de données à l'Internet public. Comme App Engine et Compute Engine utilisent la même infrastructure réseau, vous pouvez utiliser la connexion VPN pour établir une communication entre l'application App Engine et votre base de données sur site à l'aide de l'adresse IP interne du serveur de base de données.Considérations relatives à la production
App Engine peut être configuré pour effectuer un scaling automatique horizontal de votre application en fonction de diverses métriques. Contrairement aux applications Web, les bases de données nécessitent souvent des modifications complexes pour s'adapter au trafic. Dans les applications de production, App Engine peut rapidement surcharger une base de données lors de pics de trafic. C'est pourquoi, lorsque vous configurez et déployez une base de données, vous devez prendre en compte la charge de trafic moyenne prévue et la charge durant les pics d'activité.