Files
toutoukan/main.go
2025-09-13 20:01:10 +08:00

44 lines
909 B
Go

package main
import (
"log"
"strconv"
"toutoukan/config"
"toutoukan/controllers/search"
"toutoukan/init/bleveInit"
"toutoukan/init/databaseInit"
"toutoukan/init/redisInit"
"toutoukan/router"
)
func main() {
bleveInit.InitIndex()
databaseInit.DbInit()
redisInit.RedisInit()
if err := config.Goinit(); err != nil {
panic(err)
}
r := router.SetupRouter()
err := r.Run(":" + strconv.Itoa(config.Conf.Port))
if err != nil {
return
}
defer func() {
sqlDB, err := databaseInit.UserDB.DB()
if err != nil {
// 处理获取失败的情况
log.Printf("获取底层数据库连接失败: %v", err)
return
}
// 2. 调用 Close() 关闭连接池
if err := sqlDB.Close(); err != nil {
log.Printf("关闭数据库连接池失败: %v", err)
} else {
log.Println("数据库连接池已成功关闭")
}
}()
defer redisInit.RedisClient.Close()
defer search.CloseIndex()
}