package main import ( "flag" "wss-pool/cmd/servicemanager" "wss-pool/cmd/websocketcollect/forex" "wss-pool/cmd/websocketcollect/us" "wss-pool/config" "wss-pool/internal/data/business" "wss-pool/logging/applogger" "wss-pool/pkg/model" ) var ( BuildTime string configName = flag.String("config", "./config/config.yaml", "choose service") // service selection checkInt = flag.String("check", "gin", "choose service") // Service Method Selection checkStr = flag.String("model", "spots", "choose service") // Service IP and Port Configuration [10.148.0.7,10.148.0.5] ipServer = flag.String("hostS", "0.0.0.0", "Server distribution IP") addrServer = flag.String("addrS", ":8861", "Server distribution Post") contractCode = flag.String("contract", "", "Server distribution Post") project = flag.String("project", "", "Server distribution project") stockTs = flag.Int64("stockTs", 0, "") ) func init() { applogger.Info("build time:", BuildTime) flag.Parse() config.LoadConfig(*configName) } func main() { applogger.Info("gather service start") applogger.Info("intService---checkBool:%v,ginIp:%v,ginPost:%v,checkStr:%v", *checkInt, *ipServer, *addrServer, *checkStr) switch *checkInt { case model.Gin: // Http查询服务 servicemanager.GinServer(*ipServer, *addrServer, *checkInt, *project) case model.Gather: // 源订阅-火币市场行情采集 servicemanager.Gather(*checkStr, *ipServer, *addrServer) case model.CurrencyWss: // 项目-行情Wss订阅 servicemanager.Currency(*ipServer, *addrServer) case model.CollectUs: // 美股-行情采集分发 us.SubscribeShareUs(*ipServer, *addrServer) case model.GatherUs: // 项目-美股市场行情采集 servicemanager.GatherUS(*checkStr, *ipServer, *addrServer) case model.CollectForex: // 外汇-行情采集分发 forex.SubscribeForex(*ipServer, *addrServer) case model.GatherForex: // 项目-外汇市场行情采集 servicemanager.GatherForex(*checkStr, *ipServer, *addrServer) case model.ShareWss: // 股票市场-行情Wss订阅 servicemanager.ShareWss(*ipServer, *addrServer) case model.PinWs: // 股票市场-插针行情Wss订阅 servicemanager.PinWs(*ipServer, *addrServer) case model.TickDB: // 数字币|股票(mongodb)-数据优化 servicemanager.TickDB(*checkStr, *ipServer, *addrServer, *contractCode) case model.SelfContract: // 合约服务 servicemanager.SelfContract(*checkStr, *ipServer, *addrServer, *contractCode) case model.SelfMarketSpot: // 现货服务 servicemanager.SelfMarketSpot(*checkStr, *ipServer, *addrServer, *contractCode) case model.StockIndex: // 指数服务 servicemanager.GinServer(*ipServer, *addrServer, *checkInt, *project) case model.IndiaOption: // 印度期权服务 servicemanager.GinServer(*ipServer, *addrServer, *checkInt, *project) case model.USStock: // 美股服务 servicemanager.GinServer(*ipServer, *addrServer, *checkInt, *project) case model.IndonesiaStock: // 印尼股服务 servicemanager.GinServer(*ipServer, *addrServer, *checkInt, *project) case model.ThailandStock: // 泰股服务 servicemanager.GinServer(*ipServer, *addrServer, *checkInt, *project) case model.IndiaStock: // 印度股服务 servicemanager.GinServer(*ipServer, *addrServer, *checkInt, *project) case model.MalaysiaStock: // 马来西亚股服务 servicemanager.GinServer(*ipServer, *addrServer, *checkInt, *project) case model.HongKongStock: // 港股服务 servicemanager.GinServer(*ipServer, *addrServer, *checkInt, *project) case model.SingaporeStock: // 新加坡股服务 servicemanager.GinServer(*ipServer, *addrServer, *checkInt, *project) case model.UKStock: // 英股服务 servicemanager.GinServer(*ipServer, *addrServer, *checkInt, *project) case model.GermanyStock: // 德股服务 servicemanager.GinServer(*ipServer, *addrServer, *checkInt, *project) case model.FranceStock: // 法股服务 servicemanager.GinServer(*ipServer, *addrServer, *checkInt, *project) case model.BrazilStock: // 巴西股服务 servicemanager.GinServer(*ipServer, *addrServer, *checkInt, *project) case model.JapanStock: // 日本股服务 servicemanager.GinServer(*ipServer, *addrServer, *checkInt, *project) case model.StockData: // mongodb-倒数据 business.SymbolToStock(*project) case model.StockDataUs: // mongodb-倒数据 business.SymbolToStockList(*project) case model.StockDataInfo: // mongodb-倒详情数据 business.SymbolToStockInfo(*project) case model.StockDataNews: // 股票市场数据更新 business.SymbolNews(*project) case model.StockCode: // 更新股票市场代码列表(老版本) business.SymbolCode(*project) case model.DelOptionHash: // 删除期权hash business.DelOptionHash() case model.SendIndiaInfo: // 发送给PHP印度股票信息 business.SendIndiaInfo() case model.MalaysiaStockUpdate: // 新增马来西亚数字代码 business.MalaysiaStockUpdate() case model.DeleteIndia: // 清理印度市场后台没有权限的股票(优化印度股票k线-mongodb压力) business.DeleteSpotDay(*project, *stockTs) case model.ForexToExcel: // 导出外汇股票代码 business.TickerToExcel() default: applogger.Debug("Please select the startup ID......") } }