main.go 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  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/config"
  7. "app.yhyue.com/moapp/message/db"
  8. "app.yhyue.com/moapp/message/handler"
  9. _ "app.yhyue.com/moapp/message/services"
  10. "app.yhyue.com/moapp/message/task"
  11. "app.yhyue.com/moapp/message/util"
  12. "github.com/gogf/gf/v2/os/gcfg"
  13. "github.com/gogf/gf/v2/os/gctx"
  14. "github.com/nsqio/go-nsq"
  15. "log"
  16. "net/http"
  17. )
  18. func init() {
  19. logger.SetConsole(false)
  20. logger.SetRollingDaily("./logs", "message.log")
  21. }
  22. func nsqWork() {
  23. // Instantiate a consumer that will subscribe to the provided channel.
  24. config := nsq.NewConfig()
  25. consumer, err := nsq.NewConsumer(gcfg.Instance().MustGet(gctx.New(), "nsq.topic", "jy_event").String(), gcfg.Instance().MustGet(gctx.New(), "nsq.channel", "event").String(), config)
  26. if err != nil {
  27. log.Fatal(err)
  28. }
  29. // Set the Handler for messages received by this Consumer. Can be called multiple times.
  30. // See also AddConcurrentHandlers.
  31. consumer.AddHandler(&handler.Handler{})
  32. // Use nsqlookupd to discover nsqd instances.
  33. // See also ConnectToNSQD, ConnectToNSQDs, ConnectToNSQLookupds.
  34. err = consumer.ConnectToNSQLookupd(gcfg.Instance().MustGet(gctx.New(), "nsq.address", "").String())
  35. if err != nil {
  36. log.Fatal(err)
  37. }
  38. // Gracefully stop the consumer.
  39. //consumer.Stop()
  40. select {}
  41. }
  42. func main() {
  43. go nsqWork()
  44. go task.SelectOrderTask()
  45. c := config.NsqLogConfig
  46. util.NsqLog = util.NewSaveLog(c.Name, c.CollName, c.MgoSaveCacheSize, c.SPSize, c.BulkSize, c.TimeAfter, c.Timeout, *db.Mgo_Log)
  47. go util.NsqLog.SaveMgo()
  48. mux1 := http.NewServeMux()
  49. xweb.RunBase(gcfg.Instance().MustGet(gctx.New(), "webport", "").String(), mux1)
  50. }