can set request timeout
This commit is contained in:
1 parent
6ecf92682d
commit
98a0b676cb
2 files changed
+12
-2
No files matched your search
@@ -17,6 +17,7 @@ ENV GIN_MODE=release
|
||||
ENV PORT=8080
|
||||
ENV TOKEN=""
|
||||
ENV DSN=""
|
||||
ENV REQUEST_TIMEOUT=""
|
||||
ENV DB_MAX_IDLE_CONNS=0
|
||||
ENV DB_MAX_OPEN_CONNS=0
|
||||
ENV DB_PREPARED_STMT=0
|
||||
|
||||
+11
-2
@@ -19,7 +19,7 @@ import (
|
||||
"github.com/javtube/javtube-sdk-go/route/auth"
|
||||
)
|
||||
|
||||
const defaultRequestTimeout = 2 * time.Minute
|
||||
const defaultRequestTimeout = time.Minute
|
||||
|
||||
var (
|
||||
opts = new(options)
|
||||
@@ -33,6 +33,9 @@ type options struct {
|
||||
token string
|
||||
dsn string
|
||||
|
||||
// engine options
|
||||
requestTimeout time.Duration
|
||||
|
||||
// database options
|
||||
dbMaxIdleConns int
|
||||
dbMaxOpenConns int
|
||||
@@ -52,6 +55,7 @@ func init() {
|
||||
flag.StringVar(&opts.port, "port", "8080", "Port number of server")
|
||||
flag.StringVar(&opts.token, "token", "", "Token to access server")
|
||||
flag.StringVar(&opts.dsn, "dsn", "", "Database Service Name")
|
||||
flag.DurationVar(&opts.requestTimeout, "request-timeout", time.Minute, "Timeout per request")
|
||||
flag.IntVar(&opts.dbMaxIdleConns, "db-max-idle-conns", 0, "Database max idle connections")
|
||||
flag.IntVar(&opts.dbMaxOpenConns, "db-max-open-conns", 0, "Database max open connections")
|
||||
flag.BoolVar(&opts.dbAutoMigrate, "db-auto-migrate", false, "Database auto migration")
|
||||
@@ -87,7 +91,12 @@ func main() {
|
||||
opts.dbAutoMigrate = true
|
||||
}
|
||||
|
||||
app := engine.New(db, defaultRequestTimeout)
|
||||
// timeout must >= 1 second.
|
||||
if opts.requestTimeout < time.Second {
|
||||
opts.requestTimeout = defaultRequestTimeout
|
||||
}
|
||||
|
||||
app := engine.New(db, opts.requestTimeout)
|
||||
if err = app.AutoMigrate(opts.dbAutoMigrate); err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user