Le applicazioni App Engine devono trovarsi sulla stessa rete autorizzata di Redis all'istanza per potervi accedere.
Configurazione
Se hai già installato Google Cloud CLI e hai creato un'istanza Redis, puoi saltare questi passaggi.
Installa l'interfaccia a riga di comando gcloud e inizializza:
gcloud init
Segui la guida rapida per creare un'istanza Redis. Prendi nota della zona, dell'indirizzo IP e della porta dell'istanza Redis.
Applicazione di esempio
Questa applicazione di server HTTP di esempio stabilisce una connessione a un'istanza Redis da un'istanza dell'ambiente flessibile di App Engine.
Clona il repository per il linguaggio di programmazione che preferisci e vai alla cartella contenente il codice di esempio:
Vai
git clone https://github.com/GoogleCloudPlatform/golang-samples
cd golang-samples/memorystore/redis
Java
git clone https://github.com/GoogleCloudPlatform/java-docs-samples
cd java-docs-samples/memorystore/redis
Node.js
git clone https://github.com/GoogleCloudPlatform/nodejs-docs-samples
cd nodejs-docs-samples/memorystore/redis
Python
git clone https://github.com/GoogleCloudPlatform/python-docs-samples
cd python-docs-samples/memorystore/redis
Questa applicazione di esempio incrementa un contatore Redis ogni volta che viene eseguito l'accesso all'endpoint /
.
Vai
Questa applicazione utilizza
github.com/gomodule/redigo/redis
di alto profilo. Installalo eseguendo il seguente comando:
go get github.com/gomodule/redigo/redis
Java
Questa applicazione è basata su servlet Jetty 3.1.
Utilizza la libreria Jedis:
La classe AppServletContextListener
viene utilizzata per creare un pool di connessioni Redis di lunga durata:
La classe VisitCounterServlet
è un servlet web che incrementa
un contatore Redis:
Node.js
Questa applicazione utilizza la classe redis
in maggior dettaglio più avanti
in questo modulo.
Python
Questa applicazione utilizza Flask per il servizio web e il pacchetto redis-py
per comunicare con l'istanza Redis.
Preparazione dell'applicazione per il deployment
Per accedere all'istanza Redis, è necessario eseguire il deployment dell'istanza di App Engine sulla stessa rete autorizzata dell'istanza Redis e dovrai fornire Dettagli della connessione dell'istanza Redis. Puoi trovare la rete autorizzata, l'indirizzo IP e la porta dell'istanza Redis eseguendo il seguente comando:
gcloud redis instances describe [INSTANCE_ID] --region [REGION]
Crea un'applicazione App Engine.
Aggiorna la configurazione dell'app per specificare l'indirizzo IP, la porta e della tua istanza Redis:
Vai
Aggiorna il file
gae_flex_deployment/app.yaml
:Per maggiori dettagli, consulta Configurare l'app con app.yaml.
Java
Aggiorna il file
gae_flex_deployment/app.yaml
per specificare la rete della tua istanza Redis:Aggiorna il file
src/main/resources/application.properties
con l'indirizzo IP e la porta della tua istanza Redis:Per ulteriori informazioni sulla configurazione dell'app, consulta Configurare l'app con app.yaml.
Node.js
Aggiorna il file
gae_flex_deployment/app.yaml
:Per maggiori dettagli, consulta Configurare l'app con app.yaml.
Python
Aggiorna il file
gae_flex_deployment/app.yaml
:Per maggiori dettagli, consulta Configurare l'app con app.yaml.
Deployment dell'applicazione nell'ambiente flessibile di App Engine
Per eseguire il deployment dell'applicazione:
Copia i file di configurazione necessari nella directory di origine:
Vai
Copia il file
app.yaml
nella directory di origine:cp gae_flex_deployment/app.yaml .
Java
Copia il file
app.yaml
nella directory di origine:mkdir -p src/main/appengine cp gae_flex_deployment/app.yaml src/main/appengine/
Node.js
Copia il file
app.yaml
nella directory di origine:cp gae_flex_deployment/app.yaml .
Python
Copia il file
app.yaml
nella directory di origine:cp gae_flex_deployment/app.yaml .
Esegui il comando di deployment:
Vai
gcloud app deploy
L'operazione potrebbe richiedere alcuni minuti.
Java
mvn appengine:deploy
L'operazione potrebbe richiedere alcuni minuti.
Node.js
gcloud app deploy
L'operazione potrebbe richiedere alcuni minuti.
Python
gcloud app deploy
L'operazione potrebbe richiedere alcuni minuti.
Al termine del deployment, visita la tua app all'URL seguente,
sostituendo [PROJECT_ID]
con l'ID progetto Google Cloud:
https://[PROJECT_ID].appspot.com
Il conteggio sull'istanza Redis aumenta ogni volta che l'app viene visitata.