config.go 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. package util
  2. import (
  3. mgo "mongodb"
  4. qu "qfw/util"
  5. "regexp"
  6. )
  7. var (
  8. Config map[string]interface{}
  9. MgoE *mgo.MongodbSim //editor
  10. MgoS *mgo.MongodbSim //spider
  11. MgoPy *mgo.MongodbSim //py_spider
  12. CommServers map[string]interface{}
  13. BidServers map[string]interface{}
  14. UploadEvents map[int]string
  15. RandomDataPushCron string
  16. QyworkRemindCron string
  17. StartTaskCron string //任务开始
  18. CodeSummaryCron string //每天统计爬虫信息
  19. CloseNum int //关闭几天的任务
  20. DayNum int //更新数据天数
  21. CodeEventModel map[int]int //节点对应的采集模式0:老模式;1:新模式
  22. CodeEventWorking map[int]int //节点对应的采集模式0:高性能模式;1:队列模式
  23. )
  24. var TimeReg = regexp.MustCompile("[0-9]{4}-[0-9]{2}-[0-9]{2}")
  25. func InitMgo() {
  26. spider := Config["spider"].(map[string]interface{})
  27. MgoS = &mgo.MongodbSim{
  28. MongodbAddr: qu.ObjToString(spider["addr"]),
  29. DbName: qu.ObjToString(spider["db"]),
  30. Size: qu.IntAll(spider["size"]),
  31. }
  32. MgoS.InitPool()
  33. pyspider := Config["spider"].(map[string]interface{})
  34. MgoPy = &mgo.MongodbSim{
  35. MongodbAddr: qu.ObjToString(pyspider["addr"]),
  36. DbName: qu.ObjToString(pyspider["db"]),
  37. Size: qu.IntAll(pyspider["size"]),
  38. }
  39. MgoPy.InitPool()
  40. editor := Config["editor"].(map[string]interface{})
  41. MgoE = &mgo.MongodbSim{
  42. MongodbAddr: qu.ObjToString(editor["addr"]),
  43. DbName: qu.ObjToString(editor["db"]),
  44. Size: qu.IntAll(editor["size"]),
  45. }
  46. MgoE.InitPool()
  47. }
  48. func InitOther() {
  49. StartTaskCron = qu.ObjToString(Config["startaskcron"])
  50. CodeSummaryCron = qu.ObjToString(Config["codesummarycron"])
  51. RandomDataPushCron = qu.ObjToString(Config["randomdatapushcron"])
  52. QyworkRemindCron = qu.ObjToString(Config["qyworkremindcron"])
  53. CloseNum = qu.IntAll(Config["closenum"])
  54. DayNum = qu.IntAll(Config["daynum"])
  55. MsgServers := Config["msgservers"].(map[string]interface{})
  56. CommServers = MsgServers["comm"].(map[string]interface{})
  57. BidServers = MsgServers["bid"].(map[string]interface{})
  58. //event信息
  59. eventsinfo := Config["eventsinfo"].(map[string]interface{})
  60. UploadEvents = map[int]string{}
  61. CodeEventModel = map[int]int{}
  62. CodeEventWorking = map[int]int{}
  63. for event, info := range eventsinfo {
  64. eventTmp := qu.IntAll(event)
  65. infoMap := info.(map[string]interface{})
  66. UploadEvents[eventTmp] = qu.ObjToString(infoMap["server"])
  67. CodeEventModel[eventTmp] = qu.IntAll(infoMap["model"])
  68. CodeEventWorking[eventTmp] = qu.IntAll(infoMap["work"])
  69. }
  70. //qu.Debug(UploadEvents, CodeEventModel, CodeEventWorking)
  71. }