|
@@ -103,11 +103,11 @@ func main() {
|
|
|
go task_index() //定时同步更新winner_enterprise、buyer_enterprise ES索引;这个功能很少变动,几乎不需要维护
|
|
|
}
|
|
|
|
|
|
- go UpdateBidding() //更新bidding表数据
|
|
|
- go SaveEsMethod()
|
|
|
- go SaveAllEsMethod()
|
|
|
- go SaveProjectEs()
|
|
|
- go SaveBiddingAllDataEs()
|
|
|
+ go UpdateBidding() //更新bidding表数据
|
|
|
+ go SaveBiddingEsMethod() //保存es bidding数据
|
|
|
+ go SaveAllEsMethod() // 保存爬虫采集临时数据
|
|
|
+ go SaveProjectEs() //保存项目索引数据
|
|
|
+ go SaveBiddingAllDataEs() //保存stype=bidding_all_data 数据
|
|
|
|
|
|
go SaveBidErr()
|
|
|
//添加预处理函数
|
|
@@ -126,8 +126,8 @@ func main() {
|
|
|
<-signalChan
|
|
|
saveDb()
|
|
|
|
|
|
- ch := make(chan bool, 1)
|
|
|
- <-ch
|
|
|
+ //ch := make(chan bool, 1)
|
|
|
+ //<-ch
|
|
|
}
|
|
|
|
|
|
var pool = make(chan bool, 20)
|
|
@@ -465,6 +465,62 @@ func SaveEsMethod() {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+// SaveBiddingEsMethod 批量保存bidding数据
|
|
|
+func SaveBiddingEsMethod() {
|
|
|
+ arru := make([]map[string]interface{}, EsBulkSize)
|
|
|
+ indexu := 0
|
|
|
+ for {
|
|
|
+ select {
|
|
|
+ case v := <-saveEsPool:
|
|
|
+ arru[indexu] = v
|
|
|
+ indexu++
|
|
|
+ if indexu == EsBulkSize {
|
|
|
+ saveEsSp <- true
|
|
|
+ go func(arru []map[string]interface{}) {
|
|
|
+ defer func() {
|
|
|
+ <-saveEsSp
|
|
|
+ }()
|
|
|
+ if config.Conf.DB.Es.Addr != "" {
|
|
|
+ Es.BulkSave(config.Conf.DB.Es.IndexB, arru)
|
|
|
+ }
|
|
|
+ // 集群地址2
|
|
|
+ if config.Conf.DB.Es.Addr2 != "" {
|
|
|
+ Es2.BulkSave(config.Conf.DB.Es.Indexb2, arru)
|
|
|
+ }
|
|
|
+ // 集群地址3
|
|
|
+ if config.Conf.DB.Es.Addr3 != "" {
|
|
|
+ Es3.BulkSave(config.Conf.DB.Es.Indexb3, arru)
|
|
|
+ }
|
|
|
+ }(arru)
|
|
|
+ arru = make([]map[string]interface{}, EsBulkSize)
|
|
|
+ indexu = 0
|
|
|
+ }
|
|
|
+ case <-time.After(1000 * time.Millisecond):
|
|
|
+ if indexu > 0 {
|
|
|
+ saveEsSp <- true
|
|
|
+ go func(arru []map[string]interface{}) {
|
|
|
+ defer func() {
|
|
|
+ <-saveEsSp
|
|
|
+ }()
|
|
|
+ if config.Conf.DB.Es.Addr != "" {
|
|
|
+ Es.BulkSave(config.Conf.DB.Es.IndexB, arru)
|
|
|
+ }
|
|
|
+ // 集群地址2
|
|
|
+ if config.Conf.DB.Es.Addr2 != "" {
|
|
|
+ Es2.BulkSave(config.Conf.DB.Es.Indexb2, arru)
|
|
|
+ }
|
|
|
+ // 集群地址3
|
|
|
+ if config.Conf.DB.Es.Addr3 != "" {
|
|
|
+ Es3.BulkSave(config.Conf.DB.Es.Indexb3, arru)
|
|
|
+ }
|
|
|
+ }(arru[:indexu])
|
|
|
+ arru = make([]map[string]interface{}, EsBulkSize)
|
|
|
+ indexu = 0
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
// SaveAllEsMethod 保存爬虫采集临时数据,保存在华为云上
|
|
|
func SaveAllEsMethod() {
|
|
|
arru := make([]map[string]interface{}, EsBulkSize)
|