App Engine 应用必须与 Redis 实例位于同一已获授权的网络上才能访问此 Redis 实例。
设置
如果您已安装 Google Cloud CLI 且已创建 Redis 实例,则可以跳过这些步骤。
安装 gcloud CLI 并初始化:
gcloud init
按照快速入门指南创建一个 Redis 实例。记下该 Redis 实例的地区、IP 地址和端口。
示例应用
此示例 HTTP 服务器应用建立从 App Engine 柔性环境实例到 Redis 实例的连接。
克隆您所需编程语言的代码库,并转到包含示例代码的文件夹:
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
每次访问 /
端点时,此示例应用都会增加一个 Redis 计数器。
Go
此应用使用 github.com/gomodule/redigo/redis
客户端。通过运行以下命令进行安装:
go get github.com/gomodule/redigo/redis
Java
此应用基于 Jetty 3.1 servlet。
它使用 Jedis 库:
AppServletContextListener
类用于创建长效 Redis 连接池:
VisitCounterServlet
类是一个网络 Servlet,用于增加 Redis 计数器。
Node.js
此应用使用 redis
模块。
Python
准备应用进行部署
要访问 Redis 实例,App Engine 实例必须与 Redis 实例部署在相同的授权网络上,并且您必须提供 Redis 实例的连接详细信息。您可以通过运行以下命令找到 Redis 实例的已授权网络、IP 地址和端口:
gcloud redis instances describe [INSTANCE_ID] --region [REGION]
创建 App Engine 应用。
更新应用的配置以指定 Redis 实例的 IP 地址、端口和网络:
Go
更新
gae_flex_deployment/app.yaml
文件。如需了解详情,请参阅使用 app.yaml 配置应用。
Java
更新
gae_flex_deployment/app.yaml
文件以指定 Redis 实例的网络:并使用 Redis 实例的 IP 地址和端口更新
src/main/resources/application.properties
文件:如需详细了解如何配置应用,请参阅使用 app.yaml 配置应用。
Node.js
更新
gae_flex_deployment/app.yaml
文件。如需了解详情,请参阅使用 app.yaml 配置应用。
Python
更新
gae_flex_deployment/app.yaml
文件。如需了解详情,请参阅使用 app.yaml 配置应用。
将应用部署到 App Engine 柔性环境
如需部署应用,请执行以下操作:
将必要的配置文件复制到来源目录中:
Go
将
app.yaml
文件复制到来源目录中:cp gae_flex_deployment/app.yaml .
Java
将
app.yaml
文件复制到来源目录中:mkdir -p src/main/appengine cp gae_flex_deployment/app.yaml src/main/appengine/
Node.js
将
app.yaml
文件复制到来源目录中:cp gae_flex_deployment/app.yaml .
Python
将
app.yaml
文件复制到来源目录中:cp gae_flex_deployment/app.yaml .
运行 deploy 命令:
Go
gcloud app deploy
这可能需要几分钟时间。
Java
mvn appengine:deploy
这可能需要几分钟时间。
Node.js
gcloud app deploy
这可能需要几分钟时间。
Python
gcloud app deploy
这可能需要几分钟时间。
部署完成后,通过以下网址访问应用,将 [PROJECT_ID]
替换为 Google Cloud 项目 ID:
https://[PROJECT_ID].appspot.com
每次访问应用时,Redis 实例上的计数都会增加。