Puoi eseguire le tue applicazioni in App Engine utilizzando l'ambiente flessibile di App Engine o Ambiente standard di App Engine. Puoi anche scegliere di utilizzare contemporaneamente entrambi gli ambienti per la tua applicazione e di per sfruttare i vantaggi individuali di ciascun ambiente.
Ambienti di App Engine
App Engine è adatto alle applicazioni progettate utilizzando una microservizio di progettazione, soprattutto se si decide di utilizzare entrambi gli ambienti. Utilizza la sezioni seguenti per capire e comprendere quale ambiente soddisfa meglio alle esigenze dell'applicazione.
Quando scegliere l'ambiente standard
Le istanze dell'applicazione vengono eseguite in sandbox, utilizzando l'ambiente di runtime di uno dei linguaggi supportati elencati di seguito.
Applicazioni che devono gestire una rapida scalabilità.
L'ambiente standard è ottimale per le applicazioni che presentano caratteristiche:
- Destinato a pubblicare contenuti gratuitamente o a un costo molto basso, con un pagamento a pagamento solo per quello che ti serve e quando ne hai bisogno. Ad esempio, l'applicazione può scalare fino a 0 istanze in assenza di traffico.
- Si verificano picchi di traffico improvvisi ed estremi che, richiedono una scalabilità immediata.
Quando scegliere l'ambiente flessibile
Le istanze dell'applicazione vengono eseguite all'interno di container Docker su Compute Engine di macchine virtuali (VM).
Le applicazioni che ricevono traffico costante presentano un traffico regolare le fluttuazioni o i parametri per lo scale up e lo scale down gradualmente.
L'ambiente flessibile è ottimale per applicazioni che includono quanto segue: caratteristiche:
- Viene eseguito in un container Docker che include un runtime personalizzato codice sorgente scritto in altri linguaggi di programmazione.
- Utilizza o dipende da framework che includono codice nativo.
- Accede alle risorse o ai servizi del tuo progetto Google Cloud che risiedono nella rete Compute Engine.
Confronto di funzionalità di alto livello
La tabella seguente riassume le differenze tra i due ambienti:
Funzionalità | Ambiente standard | Ambiente flessibile |
---|---|---|
Ora di avvio dell'istanza | Secondi | Minuti |
Timeout massimo della richiesta | Dipende il runtime e il tipo di scalabilità. | 60 minuti |
Thread in background | Sì, con restrizioni | Sì |
Processi in background | No | Sì |
Debug SSH | No | Sì |
Scalabilità | Manuale, di base, automatica | Manuale, automatica |
Scalabilità fino a zero | Sì | No, almeno 1 istanza |
Scrittura su disco locale in corso... |
Accesso in lettura e scrittura alla directory /tmp .
|
Sì, temporaneo (disco inizializzato a ogni avvio della VM) |
Modifica del runtime | No | Sì (tramite Dockerfile) |
Data/ora del deployment | Secondi | Minuti |
Patch di sicurezza in loco automatiche | Sì | Sì (escluso il runtime dell'immagine container) |
Accesso alle API Google Cloud e Servizi come Cloud Storage Cloud SQL Memorystore Google Tasks e altri. | Sì | Sì |
WebSockets | No | Sì |
Supporta l'installazione di programmi binari di terze parti | Sì | Sì |
Località | Località per l'ambiente standard | Località per l'ambiente flessibile |
Prezzi | In base all'istanza orari | In base all'utilizzo di vCPU, memoria e dischi permanenti |
Consulta anche gli approfondimenti il confronto degli ambienti.
Confronta l'ambiente flessibile con Compute Engine
L'ambiente flessibile di App Engine presenta le seguenti differenze Compute Engine:
Le istanze VM dell'ambiente flessibile vengono riavviate su base settimanale. Durante i servizi di gestione di Google applicano qualsiasi sistema operativo necessario e aggiornamenti della sicurezza.
Hai sempre accesso root alle istanze VM di Compute Engine. Per impostazione predefinita, SSH l'accesso alle istanze VM nell'ambiente flessibile è disabilitato. Se puoi abilitare l'accesso root alle istanze VM della tua app.
I deployment del codice possono richiedere più tempo, perché le immagini container vengono create utilizzando Cloud Build.
La regione geografica di un'istanza VM con ambiente flessibile è determinato dalla località specificata l'applicazione App Engine del tuo progetto Google Cloud. Servizi di gestione di Google assicura che le istanze VM vengano geolocalizzate per ottenere prestazioni ottimali.
Esegui la migrazione dall'ambiente standard all'ambiente flessibile
Se hai un'applicazione nell'ambiente standard, potresti voler alcuni servizi all'ambiente flessibile. Per indicazioni, consulta i consigli nel il confronto degli ambienti.
Per eseguire la migrazione di servizi specifici per Python, Java, Go e PHP, consulta Eseguire la migrazione dei servizi dall'ambiente standard all'ambiente flessibile.
Provalo
Se non hai mai utilizzato Google Cloud, crea un account per valutare in che modo L'ambiente standard Ruby offre prestazioni reali diversi scenari. I nuovi clienti ricevono anche 300 $ di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
Prova l'ambiente standard Ruby gratuitamente