nsqio / nsq

A realtime distributed messaging platform
https://nsq.io
MIT License
24.72k stars 2.89k forks source link

query nsqlookupd errors(more details) #1457

Closed jeefs closed 11 months ago

jeefs commented 11 months ago

I run the following command to start the nsq daemon: ./nsqd -broadcast-address=127.0.0.1 -lookupd-tcp-address=127.0.0.1:4160 ./nsqlookupd ./nsqadmin -lookupd-http-address=127.0.0.1:4161

3 daemon logs: 微信图片_20230717104000 微信图片_20230717104032 微信图片_20230717104050 微信图片_20230717104211

error logs: C:\Users\mike\AppData\Local\Temp\GoLand___5go_build_main_go.exe producer ready producer ready 2023/07/17 10:41:15 INF 3 [testTask1/c1] querying nsqlookupd http://127.0.0.1 :4150/lookup?topic=testTask1 2023/07/17 10:41:15 INF 5 [testTask1/c1] querying nsqlookupd http://127.0.0.1 :4150/lookup?topic=testTask1 2023/07/17 10:41:15 INF 4 [testTask1/c1] querying nsqlookupd http://127.0.0.1 :4150/lookup?topic=testTask1 2023/07/17 10:41:15 INF 6 [testTask2/c1] querying nsqlookupd http://127.0.0.1 :4150/lookup?topic=testTask2 2023/07/17 10:41:15 INF 1 (127.0.0.1:4150) connecting to nsqd 2023/07/17 10:41:15 INF 7 [testTask2/c1] querying nsqlookupd http://127.0.0.1 :4150/lookup?topic=testTask2 2023/07/17 10:41:15 INF 8 [testTask2/c1] querying nsqlookupd http://127.0.0.1 :4150/lookup?topic=testTask2 2023/07/17 10:41:15 ERR 7 [testTask2/c1] error querying nsqlookupd (http://12 7.0.0.1:4150/lookup?topic=testTask2) - Get "http://127.0.0.1:4150/lookup?topic=t estTask2": net/http: HTTP/1.x transport connection broken: malformed HTTP respon se "\x00\x00\x00\x12" 2023/07/17 10:41:15 ERR 5 [testTask1/c1] error querying nsqlookupd (http://12 7.0.0.1:4150/lookup?topic=testTask1) - Get "http://127.0.0.1:4150/lookup?topic=t estTask1": net/http: HTTP/1.x transport connection broken: malformed HTTP respon se "\x00\x00\x00\x12\x00\x00\x00\x01E_BAD_PROTOCOL" 2023/07/17 10:41:15 INF 5 [testTask1/c1] retrying with next nsqlookupd
2023/07/17 10:41:15 INF 5 [testTask1/c1] querying nsqlookupd http://127.0.0.1 :4150/lookup?topic=testTask1 2023/07/17 10:41:15 INF 7 [testTask2/c1] retrying with next nsqlookupd
2023/07/17 10:41:15 ERR 6 [testTask2/c1] error querying nsqlookupd (http://12 7.0.0.1:4150/lookup?topic=testTask2) - Get "http://127.0.0.1:4150/lookup?topic=t estTask2": net/http: HTTP/1.x transport connection broken: malformed HTTP respon se "\x00\x00\x00\x12\x00\x00\x00\x01E_BAD_PROTOCOL" 2023/07/17 10:41:15 INF 6 [testTask2/c1] retrying with next nsqlookupd
2023/07/17 10:41:15 INF 6 [testTask2/c1] querying nsqlookupd http://127.0.0.1 :4150/lookup?topic=testTask2 2023/07/17 10:41:15 ERR 3 [testTask1/c1] error querying nsqlookupd (http://12 7.0.0.1:4150/lookup?topic=testTask1) - Get "http://127.0.0.1:4150/lookup?topic=t estTask1": net/http: HTTP/1.x transport connection broken: malformed HTTP respon se "\x00\x00\x00\x12\x00\x00\x00\x01E_BAD_PROTOCOL" 2023/07/17 10:41:15 INF 3 [testTask1/c1] retrying with next nsqlookupd
2023/07/17 10:41:15 INF 3 [testTask1/c1] querying nsqlookupd http://127.0.0.1 :4150/lookup?topic=testTask1 2023/07/17 10:41:15 ERR 5 [testTask1/c1] error querying nsqlookupd (http://12 7.0.0.1:4150/lookup?topic=testTask1) - Get "http://127.0.0.1:4150/lookup?topic=t estTask1": net/http: HTTP/1.x transport connection broken: malformed HTTP respon se "\x00\x00\x00\x12\x00\x00\x00\x01E_BAD_PROTOCOL" 2023/07/17 10:41:15 INF 5 [testTask1/c1] retrying with next nsqlookupd
2023/07/17 10:41:15 INF 7 [testTask2/c1] querying nsqlookupd http://127.0.0.1 :4150/lookup?topic=testTask2 2023/07/17 10:41:15 ERR 4 [testTask1/c1] error querying nsqlookupd (http://12 7.0.0.1:4150/lookup?topic=testTask1) - Get "http://127.0.0.1:4150/lookup?topic=t estTask1": net/http: HTTP/1.x transport connection broken: malformed HTTP respon se "\x00\x00\x00\x12\x00\x00\x00\x01E_BAD_PROTOCOL" 2023/07/17 10:41:15 INF 4 [testTask1/c1] retrying with next nsqlookupd
2023/07/17 10:41:15 ERR 8 [testTask2/c1] error querying nsqlookupd (http://12 7.0.0.1:4150/lookup?topic=testTask2) - Get "http://127.0.0.1:4150/lookup?topic=t estTask2": net/http: HTTP/1.x transport connection broken: malformed HTTP respon se "\x00\x00\x00\x12\x00\x00\x00\x01E_BAD_PROTOCOL" 2023/07/17 10:41:15 INF 8 [testTask2/c1] retrying with next nsqlookupd
2023/07/17 10:41:15 INF 8 [testTask2/c1] querying nsqlookupd http://127.0.0.1 :4150/lookup?topic=testTask2 2023/07/17 10:41:15 ERR 6 [testTask2/c1] error querying nsqlookupd (http://12 7.0.0.1:4150/lookup?topic=testTask2) - Get "http://127.0.0.1:4150/lookup?topic=t estTask2": net/http: HTTP/1.x transport connection broken: malformed HTTP respon se "\x00\x00\x00\x12\x00\x00\x00\x01E_BAD_PROTOCOL" 2023/07/17 10:41:15 INF 6 [testTask2/c1] retrying with next nsqlookupd
2023/07/17 10:41:15 INF 6 [testTask2/c1] querying nsqlookupd http://127.0.0.1 :4150/lookup?topic=testTask2 2023/07/17 10:41:15 INF 5 [testTask1/c1] querying nsqlookupd http://127.0.0.1 :4150/lookup?topic=testTask1 2023/07/17 10:41:15 ERR 3 [testTask1/c1] error querying nsqlookupd (http://12 7.0.0.1:4150/lookup?topic=testTask1) - Get "http://127.0.0.1:4150/lookup?topic=t estTask1": net/http: HTTP/1.x transport connection broken: malformed HTTP respon se "\x00\x00\x00\x12\x00\x00\x00\x01E_BAD_PROTOCOL" 2023/07/17 10:41:15 INF 3 [testTask1/c1] retrying with next nsqlookupd 2023/07/17 10:41:15 INF 3 [testTask1/c1] querying nsqlookupd http://127.0.0.1 :4150/lookup?topic=testTask1 2023/07/17 10:41:15 ERR 8 [testTask2/c1] error querying nsqlookupd (http://12 7.0.0.1:4150/lookup?topic=testTask2) - Get "http://127.0.0.1:4150/lookup?topic=t estTask2": net/http: HTTP/1.x transport connection broken: malformed HTTP respon se "\x00\x00\x00\x12\x00\x00\x00\x01E_BAD_PROTOCOL" 2023/07/17 10:41:15 INF 8 [testTask2/c1] retrying with next nsqlookupd
2023/07/17 10:41:15 INF 8 [testTask2/c1] querying nsqlookupd http://127.0.0.1 :4150/lookup?topic=testTask2 2023/07/17 10:41:15 ERR 7 [testTask2/c1] error querying nsqlookupd (http://12 7.0.0.1:4150/lookup?topic=testTask2) - Get "http://127.0.0.1:4150/lookup?topic=t estTask2": net/http: HTTP/1.x transport connection broken: malformed HTTP respon se "\x00\x00\x00\x12\x00\x00\x00\x01E_BAD_PROTOCOL" 2023/07/17 10:41:15 ERR 5 [testTask1/c1] error querying nsqlookupd (http://12 7.0.0.1:4150/lookup?topic=testTask1) - Get "http://127.0.0.1:4150/lookup?topic=t estTask1": net/http: HTTP/1.x transport connection broken: malformed HTTP respon se "\x00\x00\x00\x12\x00\x00\x00\x01E_BAD_PROTOCOL" consumer 1 ready2023/07/17 10:41:15 INF 4 [testTask1/c1] querying nsqlookupd http://127.0.0.1:4150/lookup?topic=testTask1 2023/07/17 10:41:15 ERR 6 [testTask2/c1] error querying nsqlookupd (http://12 7.0.0.1:4150/lookup?topic=testTask2) - Get "http://127.0.0.1:4150/lookup?topic=t estTask2": net/http: HTTP/1.x transport connection broken: malformed HTTP respon se "\x00\x00\x00\x12\x00\x00\x00\x01E_BAD_PROTOCOL" consumer 1 ready2023/07/17 10:41:15 ERR 3 [testTask1/c1] error querying nsqlo okupd (http://127.0.0.1:4150/lookup?topic=testTask1) - Get "http://127.0.0.1:415 0/lookup?topic=testTask1": net/http: HTTP/1.x transport connection broken: malfo rmed HTTP response "\x00\x00\x00\x12\x00\x00\x00\x01E_BAD_PROTOCOL" consumer 2 ready2023/07/17 10:41:15 INF 7 [testTask2/c1] retrying with next n sqlookupd 2023/07/17 10:41:15 INF 7 [testTask2/c1] querying nsqlookupd http://127.0.0.1 :4150/lookup?topic=testTask2 2023/07/17 10:41:15 ERR 4 [testTask1/c1] error querying nsqlookupd (http://12 7.0.0.1:4150/lookup?topic=testTask1) - Get "http://127.0.0.1:4150/lookup?topic=t estTask1": net/http: HTTP/1.x transport connection broken: malformed HTTP respon se "\x00\x00\x00\x12\x00\x00\x00\x01E_BAD_PROTOCOL" 2023/07/17 10:41:15 INF 4 [testTask1/c1] retrying with next nsqlookupd
2023/07/17 10:41:15 INF 4 [testTask1/c1] querying nsqlookupd http://127.0.0.1 :4150/lookup?topic=testTask1 2023/07/17 10:41:15 ERR 8 [testTask2/c1] error querying nsqlookupd (http://12 7.0.0.1:4150/lookup?topic=testTask2) - Get "http://127.0.0.1:4150/lookup?topic=t estTask2": net/http: HTTP/1.x transport connection broken: malformed HTTP respon se "\x00\x00\x00\x12\x00\x00\x00\x01E_BAD_PROTOCOL" consumer 3 ready2023/07/17 10:41:15 ERR 7 [testTask2/c1] error querying nsqlo okupd (http://127.0.0.1:4150/lookup?topic=testTask2) - Get "http://127.0.0.1:415 0/lookup?topic=testTask2": net/http: HTTP/1.x transport connection broken: malfo rmed HTTP response "\x00\x00\x00\x12\x00\x00\x00\x01E_BAD_PROTOCOL" consumer 2 ready2023/07/17 10:41:15 ERR 4 [testTask1/c1] error querying nsqlo okupd (http://127.0.0.1:4150/lookup?topic=testTask1) - Get "http://127.0.0.1:415 0/lookup?topic=testTask1": net/http: HTTP/1.x transport connection broken: malfo rmed HTTP response "\x00\x00\x00\x12\x00\x00\x00\x01E_BAD_PROTOCOL" consumer 3 ready

My idea was to use nsq for asynchronous tasks, so I wrapped my own layer based on the go-nsq client: https://github.com/jeefs/nsq-task

push message:

package main

import (
    "log"
    "nsqTask"
    "os"
)

func main() {

    nsqTask.SetUp() //initialization,Generally at the framework entry file
    producer := nsqTask.GetProducer(nsqTask.TestTask1)
    msg := "msg 1"
    //push data,Generally in business logic
    file, err := os.OpenFile("./error.log", os.O_CREATE|os.O_APPEND|os.O_WRONLY, 0644)
    if err != nil {
        panic(err)
    }
    defer func() {
        file.Close()
    }()
    log.SetOutput(file)
    //push message
    err = producer.Publish(nsqTask.TestTask1, []byte(msg))
    if err != nil {
        log.Printf("push message failed:%v", err.Error())
    } else {
        log.Printf("push message successful")
    }
    msg = "msg 2"
    err = producer.Publish(nsqTask.TestTask2, []byte(msg))
    if err != nil {
        log.Printf("push message failed:%v", err.Error())
    } else {
        log.Printf("push message successful")
    }
}

Originally posted by @jeefs in https://github.com/nsqio/nsq/issues/1456#issuecomment-1637318112

dudleycarr commented 11 months ago

It looks like you might have misconfigured your client. Your error first error message says

2023/07/17 10:41:15 INF 3 [testTask1/c1] querying nsqlookupd http://127.0.0.1/
:4150/lookup?topic=testTask1

The client is attempting to query nsqlookupd on port 4150 (nsqd's TCP port) instead of 4161 (lookupd's HTTP port).

jeefs commented 11 months ago

Thanks for replying and helping me out