package main import ( "mtp20access/core" "mtp20access/global" "mtp20access/initialize" "go.uber.org/zap" ) // @title Swagger Example API // @version 0.0.1 // @description 新接入服务 // @securityDefinitions.apikey ApiKeyAuth // @in header // @name x-token // @BasePath /api func main() { // 初始化Viper global.M2A_VP = core.Viper() // 初始化zap日志库 global.M2A_LOG = core.Zap() zap.ReplaceGlobals(global.M2A_LOG) // 初始化redis服务 initialize.Redis() // 从redis加载jwt数据 // xorm连接数据库 global.M2A_DB = initialize.XormOracle() if global.M2A_DB != nil { // 程序结束前关闭数据库链接 defer global.M2A_DB.DB().Close() } else { return } // 连接RabbitMQ global.M2A_RABBITMQ = initialize.RabbitMQ() if global.M2A_RABBITMQ != nil { defer global.M2A_RABBITMQ.Connection.Close() } else { return } // 初始化功能码主题MAP initialize.InitFuncodeTopic() // 订阅RabbitMQ回复主题 if err := initialize.RabbitMQSubscribeTopic(); err != nil { return } // 开始接收RabbitMQ信息 initialize.StartRabbitMQReceive() // 启动Http API 服务 core.RunApiServer() defer global.M2A_REDIS.Close() }