Files
prompts-core/main.go

37 lines
889 B
Go
Raw Normal View History

2026-05-12 13:59:15 +08:00
package main
import (
"context"
"os"
"os/signal"
"prompts-core/controller"
2026-05-12 13:59:15 +08:00
"syscall"
2026-06-10 16:32:42 +08:00
"gitea.redpowerfuture.com/red-future/common/http"
"gitea.redpowerfuture.com/red-future/common/jaeger"
_ "gitea.redpowerfuture.com/red-future/common/swagger"
2026-05-12 13:59:15 +08:00
_ "github.com/gogf/gf/contrib/drivers/pgsql/v2"
_ "github.com/gogf/gf/contrib/nosql/redis/v2"
"github.com/gogf/gf/v2/frame/g"
)
func main() {
ctx, cancel := context.WithCancel(context.Background())
defer cancel()
defer jaeger.ShutDown(ctx)
// 注册路由
http.RouteRegister([]interface{}{
controller.Prompt,
controller.Session,
2026-05-12 13:59:15 +08:00
})
// 监听退出信号,确保 Ctrl+C 能完整退出并关闭 gateway server
2026-05-12 13:59:15 +08:00
quit := make(chan os.Signal, 1)
signal.Notify(quit, os.Interrupt, syscall.SIGTERM)
<-quit
g.Log().Infof(ctx, "[main] 收到退出信号,开始优雅退出...")
cancel()
_ = http.Httpserver.Shutdown()
}