Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js Nodejs Redis createClient()函数_Node.js_Redis - Fatal编程技术网

Node.js Nodejs Redis createClient()函数

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

谁能解决这个问题?我是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\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有关。