package main import ( "math/rand" "runtime" "time" "github.com/sirupsen/logrus" "lc/common/util" ) //这个网页是新建的, 建好之后,有4点需要处理:admin 168 // 1. 网关build的目录下有对应的index.html, // 2. 设制网关外网地址(如: http://192.168.0.63:9180/index.html) // 3. 新建的vsn文件重新发布; // 4. 节目管理中排优先播放 //不是很确定,主要是云端这个以前设置的,而现在又没有这样的接口,可以先将云端的svn修改一下名称,再刚才的本地工具删除云端的节目再次发布一下本地的试试看 var IDGen util.IdWorker var gopool *util.Pool var version string = "1.1.0" var appname string = "its" func GetNextUint64() uint64 { u64, err := IDGen.NextId() if err != nil { logrus.Errorf("IDGen.NextId发生错误:%s", err.Error()) u64 = util.MlNow().Unix() } return uint64(u64) } //cgo学习资料:https://www.cnblogs.com/binHome/p/12984064.html func main() { defer uninit() runtime.GOMAXPROCS(runtime.NumCPU() * 2) util.InitLogrus("release") logrus.Infof("当前程序版本:%s", appname+" "+version) if sdkver, err := GetSDKVersion(); err == nil { logrus.Infof("sdk版本:%s", sdkver) } IDGen.InitIdWorker(1000, 1) if err := loadAppConfig(); err != nil { logrus.Errorf("加载app.json失败:%s", err.Error()) return } if err := LoadITSDevConfig(); err != nil { logrus.Errorf("加载its.json失败:%s", err.Error()) return } GetMQTTMgr() GetWebSvr().MQTTSubscribe() GetITSDeviceMgr().LoadITSDevice() rand.Seed(time.Now().UnixNano()) gopool = util.NewPool(10) gopool.Add(GetMQTTMgr().MQTTMessageHandle, 1) gopool.Add(GetITSDeviceMgr().Handle, 2) gopool.Add(GetWebSvr().StartSvr, 3) gopool.Add(GetWebSvr().Handle, 4) gopool.Add(GetMQTTMgr().MQTTConnectMgr, 5) gopool.Run() gopool.Wait() }