perf: 配置文件加载优化
This commit is contained in:
38
src/app.go
38
src/app.go
@@ -1,7 +1,6 @@
|
||||
package src
|
||||
|
||||
import (
|
||||
"embed"
|
||||
"fmt"
|
||||
|
||||
"be.ems/src/framework/config"
|
||||
@@ -20,34 +19,19 @@ import (
|
||||
"be.ems/src/modules/trace"
|
||||
"be.ems/src/modules/ws"
|
||||
|
||||
"github.com/chenjiandongx/ginprom"
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/prometheus/client_golang/prometheus/promhttp"
|
||||
)
|
||||
|
||||
//go:embed assets/*
|
||||
var assetsDir embed.FS
|
||||
|
||||
// 路由函数句柄,交给由 http.ListenAndServe(addr, router)
|
||||
// AppEngine 路由函数句柄,交给由 http.ListenAndServe(addr, router)
|
||||
func AppEngine() *gin.Engine {
|
||||
app := initAppEngine()
|
||||
|
||||
// TODO 不建议在主分支中加入
|
||||
// 性能分析监控
|
||||
if promEnabled := config.Get("pprof.enabled"); promEnabled != nil && promEnabled.(bool) {
|
||||
app.Use(ginprom.PromMiddleware(nil))
|
||||
app.GET("/metrics", ginprom.PromHandler(promhttp.Handler()))
|
||||
}
|
||||
|
||||
// 初始全局默认
|
||||
initDefeat(app)
|
||||
|
||||
// 初始模块路由
|
||||
initModulesRoute(app)
|
||||
|
||||
// 设置程序内全局资源访问
|
||||
config.SetAssetsDirFS(assetsDir)
|
||||
|
||||
// 首次安装启动记录
|
||||
machine.Launch()
|
||||
|
||||
@@ -56,26 +40,6 @@ func AppEngine() *gin.Engine {
|
||||
return app
|
||||
}
|
||||
|
||||
// 运行服务程序 main.go
|
||||
//
|
||||
// func main() {
|
||||
// src.ConfigurationInit()
|
||||
// if err := src.RunServer(); err != nil {
|
||||
// src.ConfigurationClose()
|
||||
// }
|
||||
// }
|
||||
func RunServer() error {
|
||||
app := AppEngine()
|
||||
|
||||
// 读取服务配置
|
||||
app.ForwardedByClientIP = config.Get("server.proxy").(bool)
|
||||
addr := fmt.Sprintf(":%d", config.Get("server.port").(int))
|
||||
|
||||
// 启动服务
|
||||
fmt.Printf("\nopen http://localhost%s \n\n", addr)
|
||||
return app.Run(addr)
|
||||
}
|
||||
|
||||
// 初始应用引擎
|
||||
func initAppEngine() *gin.Engine {
|
||||
var app *gin.Engine
|
||||
|
||||
Reference in New Issue
Block a user