Merge pull request #1 from tmpMeM/main

修改数据库连接失败挂起的逻辑为10s后重试
This commit is contained in:
dbidib
2024-10-14 20:16:00 +08:00
committed by GitHub
3 changed files with 32 additions and 9 deletions
+13 -3
View File
@@ -25,7 +25,11 @@ func MysqlInit() {
Logger: logger.Default.LogMode(logger.Error), Logger: logger.Default.LogMode(logger.Error),
}) })
if err != nil { if err != nil {
panic(err) color.Red.Printf("[store_db] mysql open DB,err=%s\n", err)
// panic(err)
time.Sleep(10 * time.Second)
MysqlInit()
return
} }
if config.AppDebug { if config.AppDebug {
Mdb = Mdb.Debug() Mdb = Mdb.Debug()
@@ -33,7 +37,10 @@ func MysqlInit() {
sqlDB, err := Mdb.DB() sqlDB, err := Mdb.DB()
if err != nil { if err != nil {
color.Red.Printf("[store_db] mysql get DB,err=%s\n", err) color.Red.Printf("[store_db] mysql get DB,err=%s\n", err)
panic(err) // panic(err)
time.Sleep(10 * time.Second)
MysqlInit()
return
} }
sqlDB.SetMaxIdleConns(viper.GetInt("mysql_max_idle_conns")) sqlDB.SetMaxIdleConns(viper.GetInt("mysql_max_idle_conns"))
sqlDB.SetMaxOpenConns(viper.GetInt("mysql_max_open_conns")) sqlDB.SetMaxOpenConns(viper.GetInt("mysql_max_open_conns"))
@@ -41,7 +48,10 @@ func MysqlInit() {
err = sqlDB.Ping() err = sqlDB.Ping()
if err != nil { if err != nil {
color.Red.Printf("[store_db] mysql connDB err:%s", err.Error()) color.Red.Printf("[store_db] mysql connDB err:%s", err.Error())
panic(err) // panic(err)
time.Sleep(10 * time.Second)
MysqlInit()
return
} }
log.Sugar.Debug("[store_db] mysql connDB success") log.Sugar.Debug("[store_db] mysql connDB success")
} }
+13 -4
View File
@@ -8,7 +8,6 @@ import (
"github.com/assimon/luuu/util/log" "github.com/assimon/luuu/util/log"
"github.com/gookit/color" "github.com/gookit/color"
"github.com/spf13/viper" "github.com/spf13/viper"
"gorm.io/driver/postgres" "gorm.io/driver/postgres"
"gorm.io/gorm" "gorm.io/gorm"
"gorm.io/gorm/logger" "gorm.io/gorm/logger"
@@ -36,7 +35,11 @@ func PostgreSQLInit() {
}, },
) )
if err != nil { if err != nil {
panic(err) color.Red.Printf("[store_db] postgres open DB,err=%s\n", err)
// panic(err)
time.Sleep(10 * time.Second)
PostgreSQLInit()
return
} }
if config.AppDebug { if config.AppDebug {
@@ -45,7 +48,10 @@ func PostgreSQLInit() {
sqlDB, err := Mdb.DB() sqlDB, err := Mdb.DB()
if err != nil { if err != nil {
color.Red.Printf("[store_db] postgres get DB,err=%s\n", err) color.Red.Printf("[store_db] postgres get DB,err=%s\n", err)
panic(err) // panic(err)
time.Sleep(10 * time.Second)
PostgreSQLInit()
return
} }
sqlDB.SetMaxIdleConns(viper.GetInt("postgres_max_idle_conns")) sqlDB.SetMaxIdleConns(viper.GetInt("postgres_max_idle_conns"))
sqlDB.SetMaxOpenConns(viper.GetInt("postgres_max_open_conns")) sqlDB.SetMaxOpenConns(viper.GetInt("postgres_max_open_conns"))
@@ -53,7 +59,10 @@ func PostgreSQLInit() {
err = sqlDB.Ping() err = sqlDB.Ping()
if err != nil { if err != nil {
color.Red.Printf("[store_db] postgres connDB err:%s", err.Error()) color.Red.Printf("[store_db] postgres connDB err:%s", err.Error())
panic(err) // panic(err)
time.Sleep(10 * time.Second)
PostgreSQLInit()
return
} }
log.Sugar.Debug("[store_db] postgres connDB success") log.Sugar.Debug("[store_db] postgres connDB success")
} }
+6 -2
View File
@@ -3,11 +3,12 @@ package dao
import ( import (
"context" "context"
"fmt" "fmt"
"time"
"github.com/assimon/luuu/util/log" "github.com/assimon/luuu/util/log"
"github.com/go-redis/redis/v8" "github.com/go-redis/redis/v8"
"github.com/gookit/color" "github.com/gookit/color"
"github.com/spf13/viper" "github.com/spf13/viper"
"time"
) )
var Rdb *redis.Client var Rdb *redis.Client
@@ -34,7 +35,10 @@ func RedisInit() {
log.Sugar.Debug("[store_redis] Nil reply returned by Rdb when key does not exist.") log.Sugar.Debug("[store_redis] Nil reply returned by Rdb when key does not exist.")
} else if err != nil { } else if err != nil {
color.Red.Printf("[store_redis] redis connRdb err,err=%s", err) color.Red.Printf("[store_redis] redis connRdb err,err=%s", err)
panic(err) // panic(err)
time.Sleep(10 * time.Second)
RedisInit()
return
} else { } else {
log.Sugar.Debug("[store_redis] redis connRdb success,suc=%s", pong) log.Sugar.Debug("[store_redis] redis connRdb success,suc=%s", pong)
} }