Browse Source

More reasonable defaults

DarthSim 7 years ago
parent
commit
816f6a8e07
2 changed files with 5 additions and 4 deletions
  1. 2 2
      README.md
  2. 3 2
      config.go

+ 2 - 2
README.md

@@ -135,8 +135,8 @@ $ xxd -g 2 -l 64 -p /dev/random | tr -d '\n'
 * `IMGPROXY_READ_TIMEOUT` — the maximum duration (in seconds) for reading the entire image request, including the body. Default: `10`;
 * `IMGPROXY_WRITE_TIMEOUT` — the maximum duration (in seconds) for writing the response. Default: `10`;
 * `IMGPROXY_DOWNLOAD_TIMEOUT` — the maximum duration (in seconds) for downloading the source image. Default: `5`;
-* `IMGPROXY_CONCURRENCY` — the maximum number of image requests to be processed simultaneously. Default: `100`;
-* `IMGPROXY_MAX_CLIENTS` — the maximum number of simultaneous active connections. Default: `IMGPROXY_CONCURRENCY * 2`;
+* `IMGPROXY_CONCURRENCY` — the maximum number of image requests to be processed simultaneously. Default: double number of CPU cores;
+* `IMGPROXY_MAX_CLIENTS` — the maximum number of simultaneous active connections. Default: `IMGPROXY_CONCURRENCY * 5`;
 
 #### Security
 

+ 3 - 2
config.go

@@ -7,6 +7,7 @@ import (
 	"io/ioutil"
 	"log"
 	"os"
+	"runtime"
 	"strconv"
 )
 
@@ -83,7 +84,7 @@ var conf = config{
 	ReadTimeout:     10,
 	WriteTimeout:    10,
 	DownloadTimeout: 5,
-	Concurrency:     100,
+	Concurrency:     runtime.NumCPU() * 2,
 	TTL:             3600,
 	MaxSrcDimension: 4096,
 	Quality:         80,
@@ -145,7 +146,7 @@ func init() {
 	}
 
 	if conf.MaxClients <= 0 {
-		conf.MaxClients = conf.Concurrency * 2
+		conf.MaxClients = conf.Concurrency * 5
 	}
 
 	if conf.TTL <= 0 {