最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

IORedis或(node

运维笔记admin15浏览0评论

IORedis或(node

IORedis或(node

当使用Redis的客户端(ioredis或node_redis)在应用程序的NodeJS的WebSocket的消息事件中,任何命令回调不会立即解雇。 (操作确实需要Redis的服务器上进行,虽然)

令人感到奇怪的是,第一个命令回调将火灾发生后我发了第二条消息,而对于第二个会火回调后我送的三分之一。

wss.on('connection', (socket, request) => {

     socket.on('message', (data) => {

      console.log("will send test command")
      this.pubClient.hset("test10", "f1","v1", (err,value) => {
          //callback not firing first time
          console.log("test command reply received")
       })

    })

}

Redis的命令正在按预期虽然在应用中的其他部分,甚至内部的上直接连接像下面时。

wss.on('connection', (socket, request) => {

    console.log("will send test command")
    this.pubClient.hset("test10", "f1","v1", (err,value) => {
        //callback fires
        console.log("test command reply received")
    })

    socket.on('message', (data) => {})
}

更新:

我有这个完全错误的。究其原因,奇怪的回调行为是一个我自定义的Redis模块没有返回答复的结果。而这似乎造成此调用毕竟回调似乎有某种一步延迟。

回答如下:

我有这个完全错误的。究其原因,奇怪的回调行为是一个我自定义的Redis模块没有返回答复的结果。而这似乎造成此调用毕竟回调似乎有某种一步延迟。

与本文相关的文章

发布评论

评论列表(0)

  1. 暂无评论