share-knowledge-server/main.go

53 lines
1.1 KiB
Go

package main
import (
"flag"
"github.com/viletyy/yolk/convert"
"gitlink.org.cn/Gitlink/share-knowledge-server/global"
"gitlink.org.cn/Gitlink/share-knowledge-server/initialize"
)
// @title ShareKnowledgeServer Api
// @version 1.0
// @description 知识共享平台
// @BasePath /api
var grpcPort string
var httpPort string
func main() {
global.GO_VP = initialize.Viper()
global.GO_LOG = initialize.Zap()
global.GO_DB = initialize.Gorm()
global.GO_REDIS = initialize.Redis()
go initialize.Cron()
go initialize.Migrate()
defer global.GO_DB.Close()
defer global.GO_REDIS.Close()
flag.StringVar(&grpcPort, "grpc_port", convert.ToString(global.GO_CONFIG.Server.GrpcPort), "启动grpc服务端口号")
flag.StringVar(&httpPort, "http_port", convert.ToString(global.GO_CONFIG.Server.HttpPort), "启动http服务端口号")
flag.Parse()
errs := make(chan error)
go func() {
err := initialize.RunHttpServer(httpPort)
if err != nil {
errs <- err
}
}()
go func() {
err := initialize.RunGrpcServer(grpcPort)
if err != nil {
errs <- err
}
}()
select {
case err := <-errs:
global.GO_LOG.Sugar().Fatalf("Run Server err: %v", err)
}
}