我正试着把我的redis bull安装到google云上。在当地一切正常。
我在服务器启动时使用以下代码:
const client = redis.createClient('6379', '10.103.YYY.YYY');
这似乎奏效了。启动时我没有收到任何错误。
当我试着用公牛来做一份工作时:
const actionQueue = new Bull(uuid(), {
redis: {
port: 6379, host: '10.103.YYY.YYY', tls: {
servername: '10.103.YYY.YYY'
}
}
});
await actionQueue.add();
actionQueue.process(async (job) => {
return this._job();
});
actionQueue.on('completed', async (job, actionId) => {
console.log(`Job completed with result ${actionId}`);
});
actionQueue.on("failed", (job, error) => {
console.log(job.id, error);
});
但是redis仍然连接到localhost ip和port。有人知道为什么这仍然连接到我的本地主机吗?我需要以不同的方式设置吗?
错误日志:
2020-11-21T14:55:35.794783Z <rejected> Error: connect ECONNREFUSED 127.0.0.1:6379
Standaard
2020-11-21T14:55:35.794791Z at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1145:16) {
Standaard
2020-11-21T14:55:35.794798Z errno: 'ECONNREFUSED',
Standaard
2020-11-21T14:55:35.794804Z code: 'ECONNREFUSED',
Standaard
2020-11-21T14:55:35.794810Z syscall: 'connect',
Standaard
2020-11-21T14:55:35.794816Z address: '127.0.0.1',
Standaard
2020-11-21T14:55:35.794822Z port: 6379
Standaard
2020-11-21T14:55:35.794828Z }
Standaard
2020-11-21T14:55:35.794834Z}
Standaard
2020-11-21T14:55:35.794987Z The error was: Error: connect ECONNREFUSED 127.0.0.1:6379
Standaard
2020-11-21T14:55:35.794994Z at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1145:16) {
Standaard
2020-11-21T14:55:35.795Z errno: 'ECONNREFUSED',
Standaard
2020-11-21T14:55:35.795006Z code: 'ECONNREFUSED',
Standaard
2020-11-21T14:55:35.795011Z syscall: 'connect',
Standaard
2020-11-21T14:55:35.795017Z address: '127.0.0.1',
Standaard
2020-11-21T14:55:35.795022Z port: 6379
Standaard
2020-11-21T14:55:35.795028Z}
1条答案
按热度按时间mtb9vblg1#
云润本机不与vpc通话。你需要在没有vpc项目的无服务器世界里架起一座桥梁。
为此,必须使用无服务器vpc连接器。在部署云运行的同一区域中创建。
然后将其连接到云运行服务。像这样,私有范围(至少,你也可以路由所有传出流量)的流量被路由到连接器并登陆到你的专有网络。现在您可以访问专有网络中的私有资源,就像您的redis示例一样。