Per accedere all'istanza Redis, le applicazioni App Engine devono trovarsi sulla stessa rete autorizzata.
Configurazione
Se hai già installato Google Cloud CLI e creato un'istanza Redis, puoi saltare questi passaggi.
Installa e inizializza gcloud CLI:
gcloud initSegui 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 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 scelto e vai alla cartella contenente il codice campione:
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 si accede all'endpoint /.
Vai
Questa applicazione utilizza il
github.com/gomodule/redigo/redis
client. Installalo eseguendo questo comando:
go get github.com/gomodule/redigo/redis@latest
Applicazione di esempio:
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 a lunga durata:
La classe VisitCounterServlet è una servlet web che incrementa un contatore Redis:
Node.js
Questa applicazione utilizza il redis
modulo. Di seguito è riportato un file package.json di esempio:
Codice dell'applicazione di esempio:
Python
Questa applicazione utilizza Flask
per il serving web e il redis-py
pacchetto per comunicare con l'istanza Redis.
Codice dell'applicazione di esempio:
Preparazione dell'applicazione per il deployment
Per accedere all'istanza Redis, l'istanza App Engine deve essere sottoposta a deployment sulla stessa rete autorizzata dell'istanza Redis e devi fornire i dettagli di connessione dell'istanza Redis. Puoi trovare la rete autorizzata, l'indirizzo IP e la porta dell'istanza Redis eseguendo questo 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 la rete dell'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.yamlper specificare la rete dell'istanza Redis:Aggiorna il file
src/main/resources/application.propertiescon l'indirizzo IP e la porta dell'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.yamlnella directory di origine:cp gae_flex_deployment/app.yaml .Java
Copia il file
app.yamlnella directory di origine:mkdir -p src/main/appengine cp gae_flex_deployment/app.yaml src/main/appengine/Node.js
Copia il file
app.yamlnella directory di origine:cp gae_flex_deployment/app.yaml .Python
Copia il file
app.yamlnella directory di origine:cp gae_flex_deployment/app.yaml .Esegui il comando di deployment:
Vai
gcloud app deployL'operazione potrebbe richiedere alcuni minuti.
Java
mvn appengine:deployL'operazione potrebbe richiedere alcuni minuti.
Node.js
gcloud app deployL'operazione potrebbe richiedere alcuni minuti.
Python
gcloud app deployL'operazione potrebbe richiedere alcuni minuti.
Al termine del deployment, visita l'app all'URL seguente, sostituendo [PROJECT_ID] con l'ID del Google Cloud progetto:
https://[PROJECT_ID].appspot.com
Il conteggio sull'istanza Redis aumenta ogni volta che viene visitata l'app.