performance.go 805 B

12345678910111213141516171819202122232425262728293031323334353637
  1. package nginx
  2. import (
  3. "net/http"
  4. "github.com/0xJacky/Nginx-UI/internal/config"
  5. "github.com/0xJacky/Nginx-UI/internal/nginx"
  6. "github.com/gin-gonic/gin"
  7. "github.com/uozi-tech/cosy"
  8. )
  9. // GetPerformanceSettings retrieves current Nginx performance settings
  10. func GetPerformanceSettings(c *gin.Context) {
  11. // Get Nginx worker configuration info
  12. perfInfo, err := nginx.GetNginxWorkerConfigInfo()
  13. if err != nil {
  14. cosy.ErrHandler(c, err)
  15. return
  16. }
  17. c.JSON(http.StatusOK, perfInfo)
  18. }
  19. // UpdatePerformanceSettings updates Nginx performance settings
  20. func UpdatePerformanceSettings(c *gin.Context) {
  21. var perfOpt config.PerfOpt
  22. if !cosy.BindAndValid(c, &perfOpt) {
  23. return
  24. }
  25. err := config.UpdatePerfOpt(&perfOpt)
  26. if err != nil {
  27. cosy.ErrHandler(c, err)
  28. return
  29. }
  30. GetPerformanceSettings(c)
  31. }