1. Introducción
Cuando hacemos pruebas de presión del lado del servidor, a menudo nos encontramos con algunas situaciones en las que la presión no puede aumentar debido a las limitaciones del sistema Linux.Aquí realizamos algunos ajustes en los parámetros del sistema Linux para reducir la interferencia de dichos factores.
2. Configuración
2.1 Configuración del sistema Linux
Ejecute : sudo vi /etc/sysctl.conf, agregue el siguiente contenido:
net.ipv4.tcp_syncookies = 0
fs.file-max = 12553500
fs.nr_open = 12453500
kernel.shmall = 1048576
kernel.shmmax = 1887436
kernel.msgmax = 65536
kernel.sysrq = 0
kernel.pid_max = 65536
net.coreback.netdev 2000000
net.core.rmem_default = 699040
net.core.rmem_max = 50331648
net.core.wmem_default = 131072
net.core.wmem_max = 33554432
net.core.somaxconn = 65535
net.ipv4.ip_nonlocal_bind = 1
net.ipv4.tphansp_ 327
net.ipv4.tcp_mem = 1048576 1572864 2097152
net.ipv4.tcp_rmem = 4096 4194304 8388608
net.ipv4.tcp_wmem = 4096 4194304 8388608
net.ipv4.tcp_slow_start_after_idle = 0
net.ipv4.tcp_synack_retries = 1
net.ipv4.tcp_window_scaling = 1
vm.swappiness = 0#Recuperación de la conexión TCP
net.ipv4.tcp_max_tw_buckets =
6000000 net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_fin_timeout = 10
net.ipv4.route.max_size = 5242880
net.ipv4.ip_forward = 1
net. ipv4.tcp_timestamps = 1 # Habilitar la
compatibilidad con marcas de tiempo TCP. Si este elemento se establece en 0, la siguiente configuración no funcionará# Administrador de conexiones TCP
net.ipv4.tcp_max_syn_backlog = 655360
net.ipv4.tcp_syn_retries = 6
net.ipv4.tcp_retries1 = 3
net.ipv4.tcp_retries2 = 6#TCP keepalive
net.ipv4.ip_local_port_range = 1000 65534
net.ipv4.tcp_keepalive_time = 30
net.ipv4.tcp_keepalive_intvl = 30
net.ipv4.tcp_keepalive_probes = 3
fs.inotify.max_user_watches = 524288
Ejecutar después de guardar: sysctl -p entra en vigor.
2.2 Límites del descriptor de archivos
2.2.1 Modificar la configuración de fileno
Ejecute: sudo vi /etc/security/limits.conf, agregue al final del artículo:
- nofile 1000000
2.2.2 Modificar el archivo de configuración del servicio del supervisor (si es un programa iniciado por el supervisor, puede modificarlo aquí)
Ejecute: vi /usr/lib/systemd/system/supervisord.service, agregue lo siguiente:
[Servicio]
# Agregue las siguientes tres líneas
LimitCORE = infinito
LimitNOFILE = 1000000
Límite NPROC = 1000000
Después de modificar el supervisord.service anterior, ejecute el siguiente comando para que surta efecto
sudo systemctl daemon-reload sudo systemctl restart supervisord.service
2.2.3 Verifique que los archivos abiertos se modifiquen correctamente
1. Vista global
Ejecutar: ulimit -a , ver la opción de archivos abiertos
2. Ver la cantidad de archivos abiertos para que el supervisor inicie el servicio.
# 1. Primero consulte el pid del supervisor ps aux | grep supervisor # 2. Si es 22296, verifique el límite de proceso cat / proc / 22296 / limits # 3. Si ve la siguiente línea, está bien. Max archivos abiertos 1000000 1000000 archivos
2.3 /etc/security/limits.conf configuración
limits.conf es el archivo de configuración de límite de recursos de Linux. Para las pruebas de rendimiento, podemos aumentarlo
* soft nofile 655350 * hard nofile 655350 * soft nproc 655350 * hard nproc 650000
Después de la configuración anterior, cuando utilizamos herramientas de pruebas de estrés como Jmeter para realizar pruebas de estrés, los servicios de back-end pueden disfrutar del máximo rendimiento del nivel de software de Linux.
Portal: últimos datos de prueba de 2021 y principales posiciones de fábrica
Blogger: prueba para ganar dinero (un agricultor de código abierto de prueba que no es 996 sino 996)
Lema: Centrarse en el desarrollo de pruebas y la operación y el mantenimiento automatizados, trabajar duro para leer, pensar y escribir, y tener libertad financiera durante la vida del volumen interno.
Categorías de contenido: mejora tecnológica, charlas diversas en el lugar de trabajo, desarrollo profesional, lectura y escritura, gestión de inversiones y finanzas, vida sana.
csdn: https://blog.csdn.net/ccgshigao
Blog Park: https://www.cnblogs.com/qa-freeroad/
51cto: https://blog.51cto.com/14900374
Cuenta pública de WeChat: prueba para ganar dinero (comparte contenido y recursos exclusivos con regularidad)