diff --git a/internal/handlers/post.go b/internal/handlers/post.go index bfa8020..3db8e00 100644 --- a/internal/handlers/post.go +++ b/internal/handlers/post.go @@ -36,13 +36,13 @@ func Fetch_post(c *fiber.Ctx) error { var rec []nimdb.GetPostRow var err error if len(cursor) == 0 { - rec, err = internal.NIMDB.GetPost(ctx, 10) + rec, err = internal.NIMDB.GetPost(ctx, internal.FETCH_LENGTH) if err != nil { log.Println(err) return fiber.ErrInternalServerError } } else if cursor_num, err := strconv.Atoi(cursor); err == nil { - rec_cur, err := internal.NIMDB.GetPostWithCursor(ctx, nimdb.GetPostWithCursorParams{ID: int32(cursor_num), Limit: 10}) + rec_cur, err := internal.NIMDB.GetPostWithCursor(ctx, nimdb.GetPostWithCursorParams{ID: int32(cursor_num), Limit: internal.FETCH_LENGTH}) if err != nil { log.Println(err) return c.Status(500).SendString("Failed to Query DB") diff --git a/internal/settings.go b/internal/settings.go index 70303f8..235fc34 100644 --- a/internal/settings.go +++ b/internal/settings.go @@ -3,12 +3,17 @@ package internal import ( "errors" "os" + "strconv" ) var ( SALT string POSTGRES_URL string JWT_SECRET string + FETCH_LENGTH int32 + PREFORK bool + err error + conv int64 ) func ReadFromENV() error { @@ -24,5 +29,28 @@ func ReadFromENV() error { if len(JWT_SECRET) < 10 { return errors.New("INVALID JWT SECRET") } + fetch_len_str := os.Getenv("FETCH_LENGTH") + if len(fetch_len_str) == 0 { + FETCH_LENGTH = 10 + } else { + conv, err = strconv.ParseInt(fetch_len_str, 10, 32) + if err != nil { + return err + } + if conv < 1 { + return errors.New("FETCH_LENGTH should be a positive number as well over 0") + } + FETCH_LENGTH = int32(conv) + + } + prefork_str := os.Getenv("PREFORK") + if len(prefork_str) == 0 { + PREFORK = false + } else { + PREFORK, err = strconv.ParseBool(prefork_str) + if err != nil { + return err + } + } return nil } diff --git a/server.go b/server.go index f83434e..f63ead2 100644 --- a/server.go +++ b/server.go @@ -30,7 +30,7 @@ func main() { internal.POOL = dbpool internal.NIMDB = nimdb.New(dbpool) - app := fiber.New() + app := fiber.New(fiber.Config{Prefork: internal.PREFORK}) app.Get("/", func(c *fiber.Ctx) error { return c.SendString("Hello, World!")