Node.js Nodejs Redis createClient()函数
谁能解决这个问题?我是node.js和redis的初学者 函数Node.js Nodejs Redis createClient()函数,node.js,redis,Node.js,Redis,谁能解决这个问题?我是node.js和redis的初学者 函数createClient()可以接受两个参数:端口和主机。但我仍然被这个问题困扰着 var client = redis.createClient(); client.on('connect', function(){ console.log('Redis client connected'); }); 错误:到127.0.0.1:6379的Redis连接失败-连接 经济增长127.0.0.1:6379 C:\Users
createClient()
可以接受两个参数:端口和主机。但我仍然被这个问题困扰着
var client = redis.createClient();
client.on('connect', function(){
console.log('Redis client connected');
});
错误:到127.0.0.1:6379的Redis连接失败-连接
经济增长127.0.0.1:6379
C:\Users\my pc\Desktop\FINAL>node index events.js:187
投掷者;//未处理的“错误”事件
^
错误:到127.0.0.1:6379的Redis连接失败-连接
经济增长127.0.0.1:6379在TCPConnectWrap.afterConnect[as oncomplete](net.js:1128:14)上,RedisClient实例在以下位置发出“error”事件: 在RedisClient.on_出错(C:\Users\my pc\Desktop\FINAL\node\u modules\redis\index.js:406:14) 在插座上。(C:\Users\my pc\Desktop\FINAL\node\u modules\redis\index.js:279:14) 位于Socket.emit(events.js:210:5) 在发射时出错(内部/streams/destroy.js:92:8) 在emitErrorAndCloseNT(内部/streams/destroy.js:60:3) 在processTicksAndRejections(internal/process/task_queues.js:80:21){errno:'ECONNREFUSED',
代码:'econnreference',系统调用:'connect',地址:'127.0.0.1',
端口:6379}
基于错误代码为“EconRefused”,在尝试连接客户端之前,您是否确定在本地主机和端口6379上运行redis服务器?基于错误代码为“EconRefused”,在尝试连接客户端之前,您是否确定在本地主机和端口6379上运行redis服务器客户端?每当我开始使用docker多个本地容器时,这是一个非常常见但简单的问题 看,您创建了一个节点应用程序和一个redis服务器,但两者是分开的,您没有在它们之间建立任何通信,这就是您面临此类问题的原因 现在,首先,您必须在节点应用程序和redis服务器之间建立连接,以便它们可以在节点应用程序和redis服务器之间进行通信 要做到这一点,只需遵循说明,希望这将解决您的问题 步骤1:要在多个本地容器之间建立连接,您有两个选项:
* Use docker CLI's networking features.
* Or, simply use docker-compose to solve the issue, i prefer docker-compose and i will show how to do this using docker-compose.
Docker compose:compose是一个用于定义和运行多容器Docker应用程序的工具
步骤2:在项目目录中创建一个docker compose.yml文件,名为“docker compose.yml”
步骤3:在“docker compose.yml”文件中编写以下代码:
步骤4:在redis.createClient()函数中,只需在index.js文件中传递主机和端口参数
const client = redis.createClient({
host: "redis-server",
port: 6379
});
步骤5:使用docker compose CLI中的docker compose构建并运行docker容器
docker-compose up --build
第6步:最后,打开浏览器并点击以下URL:
localhost:8080
每当我开始使用docker多个本地容器时,这是一个非常常见但简单的问题 看,您创建了一个节点应用程序和一个redis服务器,但两者是分开的,您没有在它们之间建立任何通信,这就是您面临此类问题的原因 现在,首先,您必须在节点应用程序和redis服务器之间建立连接,以便它们可以在节点应用程序和redis服务器之间进行通信 要做到这一点,只需遵循说明,希望这将解决您的问题 步骤1:要在多个本地容器之间建立连接,您有两个选项:
* Use docker CLI's networking features.
* Or, simply use docker-compose to solve the issue, i prefer docker-compose and i will show how to do this using docker-compose.
Docker compose:compose是一个用于定义和运行多容器Docker应用程序的工具
步骤2:在项目目录中创建一个docker compose.yml文件,名为“docker compose.yml”
步骤3:在“docker compose.yml”文件中编写以下代码:
步骤4:在redis.createClient()函数中,只需在index.js文件中传递主机和端口参数
const client = redis.createClient({
host: "redis-server",
port: 6379
});
步骤5:使用docker compose CLI中的docker compose构建并运行docker容器
docker-compose up --build
第6步:最后,打开浏览器并点击以下URL:
localhost:8080
实际问题是什么?端口6379上仅配置Redis。即使在我的index.js文件中,6379端口上的应用程序侦听仍然会导致此问题。您的redis服务正在运行吗?实际问题是什么?6379端口上仅配置redis。甚至在我的index.js文件中,端口6379上的应用程序侦听仍然会导致此问题。您的redis服务正在运行吗?我忘记打开服务器。现在一切正常。我忘记打开服务器。现在一切正常。OP没有提到关于Docker的任何内容,所以问题不太可能与Docker有关。OP没有提到关于Docker的任何内容,因此问题的可能性较小与Docker有关。