Nats.go 994 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. package Nats
  2. import (
  3. "Cold_Api/conf"
  4. "Cold_Api/logs"
  5. "fmt"
  6. "github.com/nats-io/nats.go"
  7. )
  8. var Nats *nats.Conn
  9. func init() {
  10. var err error
  11. // 连接Nats服务器
  12. Nats, err = nats.Connect("nats://" + conf.NatsServer_Url)
  13. if err != nil {
  14. fmt.Println("nats 连接失败!")
  15. panic(err)
  16. }
  17. logs.Println("nats OK!")
  18. }
  19. func NatsInit() {
  20. //// 发布-订阅 模式,异步订阅 test1
  21. //_, _ = Nats.Subscribe("test1", func(m *nats.Msg) {
  22. // fmt.Printf("Received a message: %s\n", string(m.Data))
  23. //})
  24. //// 队列 模式,订阅 test2, 队列为queue, test2 发向所有队列,同一队列只有一个能收到消息
  25. //_, _ = Nats.QueueSubscribe("test2", "queue", func(msg *nats.Msg) {
  26. // fmt.Printf("Queue a message: %s\n", string(msg.Data))
  27. //})
  28. //// 请求-响应, 响应 test3 消息。
  29. //_, _ = Nats.Subscribe("test3", func(m *nats.Msg) {
  30. // fmt.Printf("Reply a message: %s\n", string(m.Data))
  31. // _ = Nats.Publish(m.Reply, []byte("I can help!!"))
  32. //})
  33. }