12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- package main
- import (
- "encoding/json"
- mu "mfw/util"
- "mongodb"
- "net"
- "qfw/util"
- )
- var (
- Sysconfig map[string]interface{}
- MongoTool *mongodb.MongodbSim
- Dbname string
- CollPro string //项目表
- CollTag string //标签表
- CollSave string
- CollEnt string
- Rate string
- Forecast map[string]interface{}
- Category []interface{}
- Nature []interface{}
- SpiderCodes []interface{}
- udpclient mu.UdpClient
- )
- var MgoSaveCache = make(chan map[string]interface{}, 2000)
- var SP = make(chan bool, 5)
- func init() {
- util.ReadConfig(&Sysconfig)
- Dbname = Sysconfig["mongodbName"].(string)
- MongoTool = &mongodb.MongodbSim{
- MongodbAddr: Sysconfig["mongodbServers"].(string),
- Size: util.IntAll(Sysconfig["mongodbPoolSize"]),
- DbName: Dbname,
- }
- MongoTool.InitPool()
- CollPro = Sysconfig["mongoColl_pro"].(string)
- CollTag = Sysconfig["mongoColl_tag"].(string)
- CollSave = Sysconfig["mongoColl_save"].(string)
- CollEnt = Sysconfig["mongoColl_ent"].(string)
- Rate = util.ObjToString(Sysconfig["rate"])
- Forecast = Sysconfig["forecast"].(map[string]interface{})
- Category = Sysconfig["category"].([]interface{})
- Nature = Sysconfig["nature"].([]interface{})
- SpiderCodes = Sysconfig["spiderCodes"].([]interface{})
- udpport, _ := Sysconfig["udpport"].(string)
- udpclient = mu.UdpClient{Local: udpport, BufSize: 1024}
- udpclient.Listen(processUdpMsg)
- util.Debug("Udp服务监听", udpport)
- }
- func main() {
- go SaveMgo()
- GetProjectData("1567295000")
- ch := make(chan bool, 1)
- <-ch
- }
- //udp调用信号
- func processUdpMsg(act byte, data []byte, ra *net.UDPAddr) {
- util.Debug(act)
- var mapInfo map[string]interface{}
- err := json.Unmarshal(data, &mapInfo)
- util.Debug("err:", err, "mapInfo:", mapInfo)
- if err != nil {
- _ = udpclient.WriteUdp([]byte("err:"+err.Error()), mu.OP_NOOP, ra)
- } else if mapInfo != nil {
- GetProjectData(util.ObjToString(mapInfo["updatetime"]))
- }
- }
|