123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- package util
- import (
- "context"
- "google.golang.org/grpc"
- "google.golang.org/grpc/keepalive"
- "gopkg.in/olivere/elastic.v1"
- "log"
- "net/http"
- "sensitiveWords.udp/proto_grpc"
- "time"
- )
- func init() {
- log.SetFlags(log.Ldate | log.Ltime | log.Lmicroseconds | log.Lshortfile)
- }
- func InitC() {
- ReadConfig("./config.json", &Config)
- if len(Config) == 0 {
- log.Fatalln("init config err")
- }
- QfwMgo85 = &MongodbSim{
- MongodbAddr: Config["bidding_mgo_addr"].(string),
- Size: IntAll(Config["mongodbPoolSize"]),
- DbName: "qfw",
- UserName: Config["userName"].(string),
- PassWord: Config["passWord"].(string),
- }
- QfwMgo85.InitPool()
- Client_Es, _ = elastic.NewClient(http.DefaultClient, "http://192.168.3.11:9800")
- es_type, es_index = Config["es_type"].(string), Config["es_index"].(string)
- Fields = Config["fields"].(map[string]interface{})
- FindBuyerC, FindAgencyC, FindWinnerC = Config["buyer_c"].(string), Config["agency_c"].(string), Config["winner_c"].(string)
- Collection = Config["collection"].(string)
- qaddrs := Config["query_addrs"].([]interface{})
- for _, v := range qaddrs {
- ctx, cancelFunc := context.WithTimeout(context.TODO(), time.Second*5)
- defer cancelFunc()
- conn, err := grpc.DialContext(ctx, v.(string),
- grpc.WithInsecure(),
- grpc.WithBlock(),
- grpc.WithKeepaliveParams(keepalive.ClientParameters{
- Time: 10 * time.Second,
- Timeout: 100 * time.Millisecond,
- PermitWithoutStream: true}),
- )
- if err != nil {
- log.Fatalf("did not connect: %s %v", v, err)
- }
- c := proto_grpc.NewSensitiveWordsClient(conn)
- _, err = c.Search(ctx, &proto_grpc.Request{})
- if err != nil {
- log.Fatalln(err)
- } else {
- QAddrs = append(QAddrs, &c)
- }
- }
- }
- var Config map[string]interface{}
- var QfwMgo85 *MongodbSim
- var Collection string
- var Fields map[string]interface{}
- var FindBuyerC, FindAgencyC, FindWinnerC string
- var QAddrs []*proto_grpc.SensitiveWordsClient
- var es_type, es_index string
- var Client_Es *elastic.Client
|