Ir lenguaje insignia de alta concurrencia, escribir un servidor HTTP simple aquí, y luego usar la prueba ab sin Golang concurrencia de Nginx.
Compilar el firmware Linux: CGO_ENABLED = 0; GOOS = Linux; GOENV a instaurarse, establecer GOENV = C: \ Users \ gaochaowei \ AppData \ Roaming \ ir \ env;
Aliyun servidor local, ab -n 10000 -c 1000 http: // localhost: 6500 /
15 Servidor Software: 16 Servidor de Nombre de host: localhost 17 de servidor de puerto: 6500 18 19 Documento Path : / 20 Longitud de documento: 14 bytes 21 22 concurrencia Level: 1000 23 Tiempo tomada para pruebas: 0,416 segundos 24 las solicitudes completas: 10000 25 solicitudes con error: 0 26 total transferido: 1310000 bytes 27 HTML transferido: 140000 bytes 28Solicitudes por segundo: 24033.44 [# / seg] (media) 29 Tiempo por solicitud: 41.609 [ms] (media) 30 Tiempo por solicitud: 0,042 [ms] (media, a través de todas las solicitudes simultáneas) 31 Velocidad de transferencia: 3074.59 [Kbytes / seg] recibió 32 33 Conexión Times (ms) 34 min media [+ / -sd] mediana max 35 Conectar: 0 2 2,5 1 15 36 de procesamiento: 0 6 4,1 5 27 37 espera: 0 5 3,5 4 25 38 total: 0 8 5,4 6 34 39 40Porcentaje de las solicitudes servido dentro de un cierto tiempo (ms) 41 50% 6 42 66% 8 43 75% 9 44 80% 10 45 90% 13 46 95% 19 47 98% 28 48 99% 29 49 100% 34 (la más larga solicitud)
Cuando se ajusta el concurrente 5000, hay un problema: socket: Demasiados archivos abiertos (24)
descriptor de archivo punta abierta también. Así que él sería comprometerse con ulimit -a vistazo:
De hecho número máximo predeterminado de archivos abiertos es de 1024, ulimit -n 102400 se puede cambiar un poco, pero esto sólo puede haber una modificación temporal, no se describe el método permanente modificación específica aquí, el archivo es /etc/security/limits.conf.
rendimiento concurrente realmente bueno, el análisis detallado libre de ella.