您可以从与 Redis 实例使用同一授权网络的 Compute Engine 虚拟机实例连接到该 Redis 实例。
设置
如果您已安装 Google Cloud CLI,并且已创建 Redis 实例和 Cloud Storage 存储桶,则可以跳过这些步骤。
安装 gcloud CLI 并初始化:
gcloud init
按照快速入门指南创建一个 Redis 实例。记下该 Redis 实例的地区、IP 地址和端口。
创建一个 Cloud Storage 存储分区,稍后将此示例应用的应用软件工件上传于此。有关详情,请参阅 创建存储分区。
配置示例应用的 gcloud 设置
- 将
gcloud
默认项目设置为您的示例应用项目。gcloud config set project [PROJECT_ID]
示例应用
此示例 HTTP 服务器应用通过 Compute 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
将应用部署到 Compute Engine 虚拟机
导航到 gce_deployment
目录:
cd gce_deployment
部署脚本将软件工件上传到 Cloud Storage 路径。然后,该脚本启动一个 Compute Engine 实例,并创建防火墙来公开端口 8080。接着,启动脚本准备好实例。
设置 REDISHOST
和 REDISPORT
环境变量:
export REDISHOST=[REDISHOST] export REDISPORT=[REDISPORT]
其中:
REDISHOST
是托管式 Redis 实例 IP。REDISPORT
是托管的 Redis 实例端口,默认为 6379。
设置 GCS_BUCKET_NAME
环境变量:
export GCS_BUCKET_NAME=[BUCKET_NAME]/[PATH]
其中:
BUCKET_NAME
是 Cloud Storage 存储分区的名称。PATH
是要存储应用工件的目录的可选路径。
下面是一个示例部署脚本,它在新的 Compute Engine 虚拟机实例上部署此应用。
Go
Java
Node.js
Python
运行部署脚本:
chmod +x deploy.sh
./deploy.sh
应用启动脚本
示例部署脚本中使用此启动脚本来准备实例。要详细了解启动脚本以及如何查看启动脚本执行日志,请参阅运行启动脚本。
Go
Java
Node.js
Python
可能需要几分钟才能在新建的 Compute Engine 实例上完成示例应用的部署。
实例就绪且启动脚本执行完毕后,请转到 Compute Engine 实例页面并复制外部 IP 地址。
要查看所部署的示例应用,请访问 http://[EXTERNAL-IP]:8080
您可以使用 teardown.sh
脚本删除由部署脚本创建的实例和防火墙: