package main
|
|
import (
|
"context"
|
"flag"
|
"os"
|
"os/signal"
|
"path"
|
"strconv"
|
"syscall"
|
|
"sdkCompare/cache"
|
"sdkCompare/config"
|
"sdkCompare/db"
|
"sdkCompare/serve"
|
|
"basic.com/valib/logger.git"
|
vaversion "basic.com/valib/version.git"
|
)
|
|
const procName = "faceCompare"
|
|
func init() {
|
flag.Parse()
|
vaversion.Usage()
|
}
|
|
func main() {
|
err := config.Init()
|
if err != nil {
|
return
|
}
|
|
var logFile = path.Join(config.LogConf.Path, "faceCompare.log")
|
|
// 日志初始化
|
logger.InitLogger(logFile, config.LogConf.Level, config.LogConf.MaxSize, config.LogConf.MaxBackups, config.LogConf.MaxAge)
|
logger.Info("logger init success !")
|
|
if err := db.ConnectDB(); err != nil {
|
logger.Error(err.Error())
|
return
|
}
|
|
cache.InitCache()
|
|
serveUrl := "tcp://0.0.0.0:"
|
serveUrl = serveUrl + strconv.Itoa(config.MainConf.ServePort)
|
|
logger.Infof("%s serve url:%s", procName, serveUrl)
|
|
var ctx, cancel = context.WithCancel(context.Background())
|
serve.Start(ctx, serveUrl, config.MainConf.WorkerNum)
|
|
quit := make(chan os.Signal)
|
signal.Notify(quit, syscall.SIGINT, syscall.SIGTERM)
|
<-quit
|
logger.Info("Shutting down server...")
|
cancel()
|
}
|