main.go 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. package main
  2. import (
  3. "app.yhyue.com/moapp/jybase/go-logger/logger"
  4. "app.yhyue.com/moapp/jybase/go-xweb/xweb"
  5. _ "app.yhyue.com/moapp/message/config"
  6. "app.yhyue.com/moapp/message/handler"
  7. _ "app.yhyue.com/moapp/message/services"
  8. "app.yhyue.com/moapp/message/task"
  9. "github.com/gogf/gf/v2/os/gcfg"
  10. "github.com/gogf/gf/v2/os/gctx"
  11. "github.com/nsqio/go-nsq"
  12. "log"
  13. "net/http"
  14. )
  15. func init() {
  16. logger.SetConsole(false)
  17. logger.SetRollingDaily("./logs", "message.log")
  18. }
  19. func nsqWork() {
  20. // Instantiate a consumer that will subscribe to the provided channel.
  21. config := nsq.NewConfig()
  22. consumer, err := nsq.NewConsumer(gcfg.Instance().MustGet(gctx.New(), "nsq.topic", "jy_event").String(), gcfg.Instance().MustGet(gctx.New(), "nsq.channel", "event").String(), config)
  23. if err != nil {
  24. log.Fatal(err)
  25. }
  26. // Set the Handler for messages received by this Consumer. Can be called multiple times.
  27. // See also AddConcurrentHandlers.
  28. consumer.AddHandler(&handler.Handler{})
  29. // Use nsqlookupd to discover nsqd instances.
  30. // See also ConnectToNSQD, ConnectToNSQDs, ConnectToNSQLookupds.
  31. err = consumer.ConnectToNSQLookupd(gcfg.Instance().MustGet(gctx.New(), "nsq.address", "").String())
  32. if err != nil {
  33. log.Fatal(err)
  34. }
  35. // Gracefully stop the consumer.
  36. //consumer.Stop()
  37. select {}
  38. }
  39. //
  40. func main() {
  41. go nsqWork()
  42. go task.SelectOrderTask()
  43. mux1 := http.NewServeMux()
  44. xweb.RunBase(gcfg.Instance().MustGet(gctx.New(), "webport", "").String(), mux1)
  45. }