找回密码
 立即注册
首页 业界区 业界 Google Cloud Function函数访问AWS的Redis服务(二) ...

Google Cloud Function函数访问AWS的Redis服务(二)

欧阳梓蓓 2025-6-6 14:03:08
  上一章介绍了使用VP嗯将Google Cloud和AWS的网络连通,这里介绍如何使用:使用Google Cloud Function 访问AWS的Redis服务。
一:Google Cloud 创建 一个无服务VPC访问通道:VPC网络-》无服务器VPC访问通道-》ip范围自定义(记住这个ip范围)。
1.png

二:AWS添加路由,让这个新建的VPC能访问AWS的网络。有两个地方需要修改。
1:VPC面板-》路由表-》编辑路由表-》添加一个规则:目标就是上面记住的IP范围 10.8.0.0/28。第二个目标就是AWS的虚拟私有网关(创建AWS-VPN时创建的)。
2:VPN的静态路由-》添加静态路由(上面记住的IP范围 10.8.0.0/28)。
两个路由设置完成后,google Cloud新建的无服务VPC就能通过VPN访问AWS了。
2.png

3.png

 
 三:新建Google Cloud Function,访问AWS的Redis。创建云函数时-》出站流量设置-》选择上面创建的 无服务VPC.
4.png

 
函数代码:
  1. const functions = require('@google-cloud/functions-framework');
  2. const Redis = require('ioredis');
  3. // 配置 Redis 客户端
  4. const redis = new Redis({
  5.   host: 'redisdb.qbkjf-df-rer-dd',//AWS的redis的端点
  6.   port: 6379,
  7.   connectTimeout: 10000, // 设置连接超时为 10 秒
  8.   retryStrategy: () => null // 禁用自动重试
  9. });
  10. redis.on('error', (err) => {
  11.   console.error('----Redis 连接错误:', err);
  12. });
  13. functions.http('helloHttp', async (req, res) => {
  14.     await redis.set('test_key', 'Hello from Google Cloud Function!');
  15.     const result = await redis.get('test_key');
  16.     res.send(`Redis result: ${result}`);
  17. });
复制代码
 
  1. package.json
  2. {
  3.   "dependencies": {
  4.     "@google-cloud/functions-framework": "^3.0.0",
  5.     "ioredis": "^5.3.2"
  6.   }
  7. }
复制代码
 
创建完成后就可以调用Cloud Function的http链接,发送请求试试看能不能打印log:
5.png

 

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
您需要登录后才可以回帖 登录 | 立即注册