Anda dapat terhubung ke instance Redis dari lingkungan standar App Engine menggunakan Akses VPC Serverless.
Penyiapan
Jika sudah menginstal Google Cloud CLI dan telah membuat instance Redis, Anda dapat melewati langkah-langkah ini.
Instal gcloud CLI dan lakukan inisialisasi:
gcloud init
Ikuti Panduan Memulai untuk membuat instance Redis. Catat zona, alamat IP, dan port instance Redis.
Mengonfigurasi Akses VPC Serverless
Untuk terhubung dari aplikasi App Engine ke jaringan VPC yang diizinkan instance Redis, Anda harus menyiapkan Akses VPC Tanpa Server.
Temukan jaringan yang diizinkan instance Redis Anda dengan menjalankan perintah:
gcloud beta redis instances describe [INSTANCE_ID] --region [REGION]
Ikuti petunjuk dalam artikel Membuat konektor untuk membuat konektor Akses VPC Serverless. Pastikan Anda membuat konektor di region yang sama dengan aplikasi Anda, dan pastikan konektor dipasang ke jaringan VPC yang diizinkan instance Redis. Ingat nama konektor.
Contoh aplikasi
Contoh aplikasi server HTTP ini membuat koneksi ke instance Redis dari aplikasi lingkungan standar App Engine.
Clone repositori untuk bahasa pemrograman yang Anda inginkan dan buka folder yang berisi kode contoh:
Go
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
Aplikasi contoh ini menambahkan penghitung Redis setiap kali endpoint /
diakses.
Go
Aplikasi ini menggunakan klien
github.com/gomodule/redigo/redis
. Instal paket tersebut dengan menjalankan perintah berikut:
go get github.com/gomodule/redigo/redis
Java
Aplikasi ini berbasis Jetty 3.1 servlet.
Kode ini menggunakan library Jedis:
Class AppServletContextListener
digunakan untuk membuat
kumpulan koneksi Redis yang berumur panjang:
Class VisitCounterServlet
adalah servlet web yang menambahkan
penghitung Redis:
Node.js
Aplikasi ini menggunakan modul
redis
.
Python
Aplikasi ini menggunakan Flask
untuk penayangan web dan paket redis-py
untuk berkomunikasi dengan instance Redis.
Menyiapkan aplikasi untuk deployment
Untuk mengakses instance Redis, aplikasi App Engine harus dikonfigurasi untuk menggunakan konektor Akses VPC Serverless, dan Anda harus memberikan detail koneksi instance Redis.
Jika Anda belum memilikinya, buat aplikasi App Engine.
Update konfigurasi aplikasi untuk menentukan konektor Akses VPC Serverless serta alamat IP dan port instance Redis Anda:
Go
Update file
gae_standard_deployment/app.yaml
:Lihat app.yaml Configuration File untuk detail selengkapnya.
Java
Perbarui file
gae_standard_deployment/appengine-web.xml
untuk menentukan konektor Akses VPC Serverless:Update file
src/main/resources/application.properties
dengan alamat IP dan port instance Redis Anda:Untuk informasi selengkapnya tentang mengonfigurasi aplikasi, lihat Referensi appengine-web.xml.
Node.js
Update file
gae_standard_deployment/app.yaml
:Lihat app.yaml Configuration File untuk detail selengkapnya.
Python
Update file
gae_standard_deployment/app.yaml
:Lihat app.yaml Configuration File untuk detail selengkapnya.
Men-deploy aplikasi ke lingkungan standar App Engine
Untuk men-deploy aplikasi:
Salin file konfigurasi yang diperlukan ke dalam direktori sumber:
Go
Salin file
app.yaml
dango.mod
ke direktori sumber:cp gae_standard_deployment/{app.yaml,go.mod} .
Java
Salin file
appengine-web.xml
ke direktori sumber:mkdir -p src/main/webapp/WEB-INF cp gae_standard_deployment/appengine-web.xml src/main/webapp/WEB-INF/
Node.js
Salin file
app.yaml
ke direktori sumber:cp gae_standard_deployment/app.yaml .
Python
Salin file
app.yaml
ke direktori sumber:cp gae_standard_deployment/app.yaml .
Jalankan perintah deploy:
Go
gcloud app deploy
Java
mvn package appengine:stage gcloud app deploy target/appengine-staging/app.yaml
Node.js
gcloud app deploy
Python
gcloud app deploy
Setelah deployment selesai, perintah akan menampilkan URL tempat Anda dapat mengunjungi aplikasi. Jika mengunjungi URL ini, Anda akan melihat jumlah di instance Redis Anda meningkat setiap kali halaman dimuat.