zhangjinkun 5 年之前
父節點
當前提交
958318abfc
共有 4 個文件被更改,包括 39 次插入3 次删除
  1. 6 0
      udpcreateindex/src/config.json
  2. 4 2
      udpcreateindex/src/main.go
  3. 1 1
      udpcreateindex/src/projectindex.go
  4. 28 0
      udpcreateindex/src/task.go

+ 6 - 0
udpcreateindex/src/config.json

@@ -47,6 +47,12 @@
         "index": "projectset_v1",
         "type": "projectset"
     },
+    "project2": {
+        "db": "extract_kf",
+        "collect": "huawei_project",
+        "index": "project_v2",
+        "type": "project"
+    },
     "standard": {
  		"addr": "172.17.145.163:27082",
         "size": 10,

+ 4 - 2
udpcreateindex/src/main.go

@@ -25,7 +25,7 @@ var (
 	multiIndex         []string
 	BulkSize           = 400
 
-	winner, bidding, biddingback, project, buyer, standard map[string]interface{}
+	winner, bidding, biddingback, project, project2, buyer, standard map[string]interface{}
 )
 
 func init() {
@@ -39,6 +39,7 @@ func init() {
 	bidding, _ = Sysconfig["bidding"].(map[string]interface{})
 	biddingback, _ = Sysconfig["biddingback"].(map[string]interface{})
 	project, _ = Sysconfig["project"].(map[string]interface{})
+	project2, _ = Sysconfig["project2"].(map[string]interface{})
 	mconf, _ := Sysconfig["mongodb"].(map[string]interface{})
 	mgo = &mongodb.MongodbSim{
 		MongodbAddr: mconf["addr"].(string),
@@ -91,6 +92,7 @@ func init() {
 }
 
 func main() {
+	go task_projects()
 	updport := Sysconfig["udpport"].(string)
 	udpclient = mu.UdpClient{Local: updport, BufSize: 1024}
 	udpclient.Listen(processUdpMsg)
@@ -140,7 +142,7 @@ func processUdpMsg(act byte, data []byte, ra *net.UDPAddr) {
 					defer func() {
 						<-pool
 					}()
-					projectTask(data, mapInfo)
+					projectTask(data, project, mapInfo)
 				}()
 			case "biddingback": //不联表,使用bidding表直接调用mongo库生成索引
 				pool <- true

+ 1 - 1
udpcreateindex/src/projectindex.go

@@ -12,7 +12,7 @@ import (
 	"gopkg.in/mgo.v2/bson"
 )
 
-func projectTask(data []byte, mapInfo map[string]interface{}) {
+func projectTask(data []byte, project, mapInfo map[string]interface{}) {
 	defer util.Catch()
 	q, _ := mapInfo["query"].(map[string]interface{})
 	if q == nil {

+ 28 - 0
udpcreateindex/src/task.go

@@ -0,0 +1,28 @@
+// task定时执行项目索引
+package main
+
+import (
+	"log"
+	"time"
+
+	"github.com/cron"
+)
+
+func task_projects() {
+	c := cron.New()
+	_ = c.AddFunc("20 30 5 * * *", func() {
+		t := time.Now()
+		pici := time.Date(t.Year(), t.Month(), t.Day(), 0, 0, 0, 0, time.Local).Unix()
+		log.Println(pici)
+		mapInfo := map[string]interface{}{
+			"query": map[string]interface{}{
+				"pici": map[string]interface{}{
+					"$gte": pici - 86400,
+					"$lte": pici,
+				},
+			},
+		}
+		projectTask([]byte{}, project2, mapInfo)
+	})
+	c.Start()
+}