Anda dapat terhubung ke instance Redis dari lingkungan standar App Engine menggunakan Akses VPC Serverless.
Penyiapan
Jika sudah menginstal Google Cloud CLI dan membuat instance Redis, Anda dapat melewati langkah-langkah ini.
Instal gcloud CLI dan lakukan inisialisasi:
gcloud initIkuti Panduan Memulai Cepat 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 resmi instance Redis, Anda harus menyiapkan Akses VPC Serverless.
Temukan jaringan resmi instance Redis dengan menjalankan perintah:
gcloud redis instances describe [INSTANCE_ID] --region [REGION]Ikuti petunjuk di Membuat konektor untuk membuat konektor Akses VPC Serverless. Pastikan Anda membuat konektor di region yang sama dengan aplikasi, dan pastikan konektor terlampir ke jaringan VPC resmi instance Redis. Ingat nama konektor.
Contoh aplikasi
Aplikasi server HTTP contoh ini membuat koneksi ke instance Redis dari aplikasi lingkungan standar App Engine.
Kloning repositori untuk bahasa pemrograman yang Anda pilih 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
github.com/gomodule/redigo/redis
klien. Instal dengan menjalankan perintah berikut:
go get github.com/gomodule/redigo/redis@latest
Contoh aplikasi:
Java
Aplikasi ini berbasis servlet Jetty 3.1.
Aplikasi 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 redis
modul. Berikut adalah contoh file package.json:
Kode aplikasi contoh:
Python
Aplikasi ini menggunakan Flask
untuk penayangan web dan paket redis-py
untuk berkomunikasi dengan instance Redis.
Kode aplikasi contoh:
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 belum memilikinya, buat aplikasi App Engine.
Perbarui konfigurasi aplikasi untuk menentukan konektor Akses VPC Serverless serta alamat IP dan port instance Redis:
Go
Perbarui file
gae_standard_deployment/app.yaml:Lihat File Konfigurasi app.yaml untuk mengetahui detail selengkapnya.
Java
Perbarui file
gae_standard_deployment/appengine-web.xmluntuk menentukan konektor Akses VPC Serverless:Dan perbarui file
src/main/resources/application.propertiesdengan alamat IP dan port instance Redis:Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi aplikasi, lihat Referensi appengine-web.xml.
Node.js
Perbarui file
gae_standard_deployment/app.yaml:Lihat File Konfigurasi app.yaml untuk mengetahui detail selengkapnya.
Python
Perbarui file
gae_standard_deployment/app.yaml:Lihat File Konfigurasi app.yaml untuk mengetahui detail selengkapnya.
Men-deploy aplikasi ke lingkungan standar App Engine
Untuk men-deploy aplikasi:
Salin file konfigurasi yang diperlukan ke direktori sumber:
Go
Salin file
app.yamldango.modke direktori sumber:cp gae_standard_deployment/{app.yaml,go.mod} .Java
Salin file
appengine-web.xmlke 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.yamlke direktori sumber:cp gae_standard_deployment/app.yaml .Python
Salin file
app.yamlke direktori sumber:cp gae_standard_deployment/app.yaml .Jalankan perintah deploy:
Go
gcloud app deployJava
mvn package appengine:stage gcloud app deploy target/appengine-staging/app.yamlNode.js
gcloud app deployPython
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 bertambah setiap kali halaman dimuat.