我已经为使用 ElasticBeanstalk 的 Node 网络服务器创建了一个 redis 缓存。他们都共享同一个安全组,如果我 ssh 进入我的 eb 实例并执行:
redis-cli -h <redis server endpoint>
有用。但是当我在我的 SailsJS 应用程序上做同样的事情然后将它部署到我的 EB 实例时它不起作用:
/myapp/config/redis.js
const redis = require('redis')
module.exports.RedisClient ={
client: redis.createClient('<redis server endpoint>')
}
redis服务器不使用密码
如果我用 sails.config.RedisClient.client.connected
记录它的输出
输出是false
我在这里做错了什么?
最佳答案
好的,我解决了这个问题,问题是我没有使用 redis 协议(protocol)附加主机端点:redis://
,所以它从未连接。
正确的代码是:
const redis = require('redis')
module.exports.RedisClient ={
client: redis.createClient('reddis://<redis server endpoint>')
}
关于node.js - Redis 连接到 EB 实例内部,但不会连接已部署的 sailsjs 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57275622/