cd ~/nsq-1.0.0-compat.linux-amd64.go1.8sudo chmod -R u+x bin/
nohup ./nsqlookupd &
nohup ./nsqd --lookupd-tcp-address=127.0.0.1:4160 &
nohup ./nsqadmin --lookupd-http-address=127.0.0.1:4161 &
http://127.0.0.1:4171
nohup ./nsq_to_file --topic=test --output-dir=/tmp --lookupd-http-address=127.0.0.1:4161 &
curl -d 'hello world' 'http://127.0.0.1:4151/pub?topic=test'
#!/bin/sh #服务启动 #lookupd:151 152 #更改 --data-path 所指定的数据存放路径,否则无法运行 echo '删除日志文件' rm -rf ./log/* echo '启动nsqlookupd服务' nohup nsqlookupd >./log/nsqlookupd.log 2>&1 & echo '启动nsqd服务' nohup nsqd --lookupd-tcp-address=0.0.0.0:4160 -tcp-address="0.0.0.0:4153" --data-path=./data1 >./log/nsqd1.log 2>&1 & nohup nsqd --lookupd-tcp-address=0.0.0.0:4160 -tcp-address="0.0.0.0:4154" --data-path=./data2 -http-address="0.0.0.0:4155" >./log/nsqd2.log 2>&1 & echo '启动nsqdadmin服务' nohup nsqadmin --lookupd-http-address=127.0.0.1:4161 >./log/nsqadmin.log 2>&1 &
#!/bin/sh#服务停止ps -ef | grep nsq| grep -v grep | awk '{print $2}' | xargs kill -2
192.168.234.77192.168.234.36192.168.234.39
192.168.234.117192.168.234.118
192.168.234.119
vi /etc/profileexport NSQ_HOME=/usr/local/software/nsqexport PATH=$PATH:$NSQ_HOME/bin. /etc/profile
#nsqlookupeval nsqlookupd --verbose > nsqlookup.log 2>&1 "&"
#nsq eval nsqd –data-path=/usr/local/software/nsq/data –lookupd-tcp-address=192.168.234.77:4160,192.168.234.36:4160,192.168.234.39:4160 > nsqd.log 2>&1 “&”
#nsqadmin eval nsqadmin –lookupd-http-address=192.168.234.77:4161,192.168.234.36:4161,192.168.234.39:4161 > nsqadmin.log 2>&1 “&”
package mainimport ( "log" "github.com/bitly/go-nsq" "io/ioutil" "strconv")var nullLogger = log.New(ioutil.Discard, "", log.LstdFlags)func sendMsg(message string){ //init default config config := nsq.NewConfig() w, _ := nsq.NewProducer("192.168.2.117:4150", config) err := w.Ping() if err != nil { //192.168.2.117:4150,192.168.2.68:4150 log.Fatalln("error ping 10.50.115.16:4150", err) // switch the second nsq. You can use nginx or HAProxy for HA. w, _ = nsq.NewProducer("192.168.2.68:4150", config) } w.SetLogger(nullLogger, nsq.LogLevelInfo) err2 := w.Publish("a-test", []byte(message)) if err2 != nil { log.Panic("Could not connect nsq") } w.Stop()}func main() { for i := 0; i < 2; i ++ { sendMsg("msg index "+ strconv.Itoa(i + 10000)) }}
package mainimport ( "log" "github.com/bitly/go-nsq" "fmt")func doSimpleConsumerTask(){ config := nsq.NewConfig() q, _ := nsq.NewConsumer("a-test", "ch", config) q.AddHandler(nsq.HandlerFunc(func(message *nsq.Message) error { log.Printf("message: %v", string(message.Body)) message.Finish() return nil })) lookupAddr := []string { "192.168.234.77:4161", "192.168.234.36:4161", "192.168.234.39:4161", } err := q.ConnectToNSQLookupds(lookupAddr) if err != nil { log.Panic("Could not connect") } <-q.StopChan stats := q.Stats() fmt.Sprintf("message received %d, finished %d", stats.MessagesReceived, stats.MessagesFinished)}func main(){ doSimpleConsumerTask()}
无论从事什么行业,只要做好两件事就够了,一个是你的专业、一个是你的人品,专业决定了你的存在,人品决定了你的人脉,剩下的就是坚持,用善良專業和真诚赢取更多的信任。