node.js - 如何在 Kubernetes 中连接 Redis 服务?
问题描述
我的服务是这样的:
➜ MyProject kubectl get services
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 20d
my-app-srv NodePort 10.98.114.126 <none> 3000:30001/TCP 3m49s
redis-srv ClusterIP 10.105.200.194 <none> 6379/TCP 3m49s
我想从 my-app-srv 连接并使用 redis-srv。
为此在我的 my-app/index.js 文件中:
const redis_url = "redis://redis-srv:6379";
let REDIS_URL = redis_url;
let myStatsQueue = new Queue('statistics', REDIS_URL);
myStatsQueue.on('global:completed', (jobId, result) => {
// console.log(`Job completed with result ${result}`);
});
但是当 pod 启动时,我收到这样的错误:
ReplyError: ERR value is not an integer or out of range
at parseError (/app/node_modules/redis-parser/lib/parser.js:179:12)
at parseType (/app/node_modules/redis-parser/lib/parser.js:302:14) {
command: { name: 'select', args: [ 'NaN' ] }
}
连接字符串错了吗?或者问题出在哪里?如何正确连接此 Redis 服务。
解决方案
推荐阅读
- c - 如何在 C 中使用 system() 而不是 rename() 重命名文件
- php - 仅使用二进制减少字符串长度,使其尽可能短
- python-3.x - 从 python 文件创建可执行文件
- visual-studio - 如何在 Visual Studio 中抑制“并非所有代码路径都返回值”错误消息
- java - Fortify:Java 8 的 Null 取消引用
- java - Java Float.compare() 是否总是产生正确的结果?
- sql - 查询视图时有没有提高性能的方法?
- react-native - 在 react-native 中向 webService 发送数据
- php - 如果更改特定字段,则不应要求所有必填字段
- configuration - 多域 TYPO3 设置中的不同扩展配置?