main.go 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. package main
  2. import (
  3. "Cold_mqtt/MqttServer"
  4. "Cold_mqtt/Nats"
  5. "Cold_mqtt/TimeTask"
  6. "Cold_mqtt/conf"
  7. "Cold_mqtt/logs"
  8. _ "Cold_mqtt/routers"
  9. "github.com/beego/beego/v2/adapter/orm"
  10. beego "github.com/beego/beego/v2/server/web"
  11. _ "github.com/go-sql-driver/mysql"
  12. "strconv"
  13. )
  14. func init() {
  15. orm.RegisterDriver("mysql", orm.DRMySQL)
  16. orm.RegisterDataBase("default", "mysql",
  17. conf.MysqlServer_Username+":"+conf.MysqlServer_Password+"@tcp("+conf.MysqlServer_UrlPort+")/"+conf.MysqlServer_Database+"?charset=utf8mb4&loc=Local&parseTime=True",
  18. conf.MysqlServer_MaxIdleConnections, conf.MysqlServer_MaxOpenConnections)
  19. orm.RunSyncdb("default", false, true) // 创建数据库
  20. //logs.Println("MysqlServer:" + conf.MysqlServer_Username + ":" + conf.MysqlServer_Password + "@tcp(" + conf.MysqlServer_UrlPort + ")/" + conf.MysqlServer_Database + "?charset=utf8mb4&loc=Local&parseTime=True")
  21. }
  22. func main() {
  23. beego.BConfig.AppName = conf.AppName + "_" + strconv.Itoa(conf.HTTPPort) // 项目名
  24. beego.BConfig.ServerName = conf.AppName + "_" + strconv.Itoa(conf.HTTPPort) //server 名称
  25. beego.BConfig.RunMode = "dev" // 应用的运行模式
  26. beego.BConfig.Listen.HTTPPort = conf.HTTPPort //监听端口 本地:8518 线上:8528
  27. logs.Println("MqttServer", " ======= 项目启动 ========")
  28. go MqttServer.Run_MqttServer() // MQTT 通讯
  29. //go MqttServer.MqttPolling() // MQTT 设备轮询
  30. go MqttServer.DeviceMqttMap_go() //// 缓存数据发送-确保设备在休眠后 能收到数据
  31. go Nats.NatsInit() // Nats 通讯
  32. go TimeTask.Init() // 时间任务
  33. beego.Run()
  34. }