Comandos de Linux de rendimiento del servidor

1.1 vista de rendimiento de la CPU

1. Verifique la cantidad de CPU físicas:

cat /proc/cpuinfo |grep "physical id"|sort|uniq|wc -l

2. Vea la cantidad de núcleos en cada CPU física:

cat /proc/cpuinfo |grep "cpu cores"|wc -l

3. El número de CPU lógica:

cat /proc/cpuinfo |grep "processor"|wc -l

Número de cpu física * número de núcleos = número de cpu lógico (en el caso de que no sea compatible con la tecnología Hyper-Threading)

1.2 Vista de memoria

1. Verifique el uso de la memoria:

#free -m

total used free shared buffers cached

Mem: 3949 2519 1430 0 189 1619

-/+ buffers/cache: 710 3239

Swap: 3576 0 3576


total:内存总数

used:已经使用的内存数

free:空闲内存数

shared:多个进程共享的内存总额

- buffers/cache:(已用)的内存数,即used-buffers-cached

+ buffers/cache:(可用)的内存数,即free+buffers+cached


Buffer Cache用于针对磁盘块的读写;

Page Cache用于针对文件inode的读写,这些Cache能有效地缩短I/O系统调用的时间。



对操作系统来说free/used是系统可用/占用的内存;

对应用程序来说-/+ buffers/cache是可用/占用内存,因为buffers/cache很快就会被使用。

Cuando trabajamos, debemos mirarlo desde una perspectiva de aplicación.

1.3 Vista del disco duro

1. Ver información del disco duro y la partición:

fdisk -l

2. Verifique la ocupación de espacio en disco del sistema de archivos:

df -h

3. Verifique el rendimiento de E / S del disco duro (se muestra una vez por segundo y se muestra 5 veces):

iostat -x 1 5

Iostat está incluido en el paquete systat, puede usar yum -y install systat para instalar.

Parámetros frecuentemente preocupados:

  1. 如%util接近100%,说明产生的I/O请求太多,I/O系统已经满负荷,该磁盘可能存在瓶颈。

  2. 如idle小于70%,I/O的压力就比较大了,说明读取进程中有较多的wait。

4. Verifique el tamaño de un directorio en el sistema Linux:

du -sh /root

Si encuentra que el espacio de una determinada partición está casi agotado, puede ingresar el punto de montaje de la partición, usar el siguiente comando para encontrar el archivo o directorio que ocupa más espacio y luego encontrar el frente que ocupa ocupan la mayor cantidad de espacio en el sistema en orden descendente. 10 archivos o directorios:

du -cksh *|sort -rn|head -n 10

1.4 Ver carga promedio

A veces el sistema responde muy lentamente, pero no se encuentra el motivo, entonces es necesario verificar la carga promedio para ver si tiene una gran cantidad de procesos esperando en fila.

promedio de carga: carga promedio

El promedio de carga se refiere a la utilización promedio de la cola de ejecución del sistema y también se puede considerar como el número promedio de procesos ejecutables .

Tomando las condiciones de la carretera como ejemplo, las condiciones de la CPU de un solo núcleo y de un solo carril son las siguientes:

imagen

  • Un número entre 0,00-1,00 indica que las condiciones de la carretera son muy buenas en este momento, no hay congestión y los vehículos pueden pasar sin obstáculos.
  • 1,00 significa que la carretera es normal, pero puede deteriorarse y causar congestión. En este momento, el sistema no tiene recursos redundantes y el administrador necesita optimizar.
  • 1,00 - *** significa que las condiciones de la carretera no son tan buenas. Si llega a 2,00, significa que hay el doble de vehículos esperando en el puente. Debes comprobar este caso.

CPU de varios núcleos: la situación de varios carriles es la siguiente:

imagen

En el caso de una CPU de varios núcleos, el número en el estado de carga completa es "1,00 * número de núcleo de CPU", es decir, la CPU de doble núcleo es 2,00 y la CPU de cuatro núcleos es 4,00. 

Los procesos generales necesitan consumir recursos como CPU, memoria, E / S de disco, E / S de red, etc. En este caso, el promedio de carga no se refiere únicamente al uso de la CPU. Es decir, factores como la memoria, el disco y la red también pueden afectar el valor de carga promedio del sistema. 
En un procesador de un solo núcleo, cuando el valor de carga promedio es 1 o menos, el proceso de procesamiento del sistema será muy fácil, es decir, la carga es muy baja. Cuando llegue a 3, parecerá estar muy ocupado, y cuando llegue a 5 u 8, no podrá procesar bien (5 y 8 siguen siendo umbrales controvertidos, por razones de conservadurismo, se recomienda elegir bajo ).

Ver datos promedio de carga

El promedio de carga se puede ver en los siguientes comandos

# top 
# uptime 
# w

Captura de pantalla a continuación:

comando superior

imagen

comando de tiempo de actividad

imagen

comando w

imagen

Los tres valores de carga promedio aquí se refieren al valor de carga promedio del sistema en los últimos 1/5/15 minutos.

Según la experiencia: debemos centrarnos en la carga promedio de 5/15 minutos, porque la carga promedio de 1 minuto es demasiado frecuente, y la alta concurrencia en un momento hará que el valor cambie drásticamente.

1.5 comando vmstat para determinar si el sistema está ocupado

También puede usar el comando vmstat para determinar si el sistema está ocupado, donde:

procs

r:等待运行的进程数。

b:处在非中断睡眠状态的进程数。

w:被交换出去的可运行的进程数。

memeory

swpd:虚拟内存使用情况,单位为KB。

free:空闲的内存,单位为KB。

buff:被用来作为缓存的内存数,单位为KB。

swap

si:从磁盘交换到内存的交换页数量,单位为KB。

so:从内存交换到磁盘的交换页数量,单位为KB。

io

bi:发送到块设备的块数,单位为KB。

bo:从块设备接受的块数,单位为KB。

system

in:每秒的中断数,包括时钟中断。

cs:每秒的环境切换次数。

cpu

按cpu的总使用百分比来显示。

us:cpu使用时间。

sy:cpu系统使用时间。

id:闲置时间。

1.6 En Linux, puede utilizar la herramienta nethogs para ver el tráfico de procesos

1.7 Otros parámetros

查看内核版本号:

uname -a

简化命令:uname -r

查看系统是32位还是64位的:

file /sbin/init

查看发行版:

cat /etc/issue

或lsb_release -a

查看系统已载入的相关模块:

lsmod

查看pci设置:

lspci

2.1.3 Herramientas de análisis del rendimiento del sistema

1. Comandos comunes del sistema

Vmstat 、 sar 、 iostat 、 netstat 、 gratis 、 ps 、 arriba 等

2. Combinaciones de uso común

  1. vmstat、sar、iostat检测是否是CPU瓶颈

  2. free、vmstat检测是否是内存瓶颈

  3. iostat检测是否是磁盘I/O瓶颈

  4. netstat检测是否是网络带宽瓶颈

2.1.4 Evaluación y optimización del rendimiento de Linux

Evaluación general del rendimiento del sistema (comando de tiempo de actividad)
uptime

16:38:00 hasta 118 días, 3:01, 5 usuarios, promedio de carga: 1,22, 1,02, 0,91

Nota:

  • El tamaño medio de carga de tres valores generalmente no puede ser mayor que el número de CPU del sistema.

    El sistema tiene 8 CPU, si el valor promedio de carga es mayor que 8 durante un tiempo prolongado, indica que la CPU está muy ocupada y la carga es alta, lo que puede afectar el rendimiento del sistema.

  • Pero ocasionalmente más de 8, generalmente no afecta el rendimiento del sistema.

  • Si el valor de salida promedio de carga es menor que el número de CPU, significa que la CPU tiene porciones de tiempo inactivo, como la salida en este ejemplo, la CPU está muy inactiva

2.2.1 Evaluación del rendimiento de la CPU

1. Use el comando vmstat para monitorear la CPU del sistema

Muestra información breve sobre el rendimiento de varios recursos en el sistema, principalmente dependiendo de la carga de la CPU.

La siguiente es la salida del comando vmstat en un sistema determinado:

[root@node1 ~]#vmstat 2 3

procs

———–memory———- —swap– —–io—- –system– —–cpu——


r b swpd freebuff cache si so bi bo incs us sy idwa st


0 0 0 162240 8304 67032 0 0 13 21 1007 23 0 1 98 0 0


0 0 0 162240 8304 67032 0 0 1 0 1010 20 0 1 100 0 0


0 0 0 162240 8304 67032 0 0 1 1 1009 18 0 1 99 0 0

Procs

r: el número de procesos en ejecución y en espera del intervalo de tiempo de la CPU. Si este valor es mayor que el número de CPU del sistema durante un tiempo prolongado, significa que la CPU es insuficiente y es necesario aumentar la CPU.

b: el número de procesos en espera de recursos, como en espera de E / S o intercambio de memoria.

UPC

nos

El porcentaje de tiempo de CPU consumido por los procesos de usuario.
Cuando el valor de nosotros es relativamente alto, significa que el proceso del usuario consume más tiempo de la CPU, pero si es superior al 50% durante mucho tiempo, debe considerar procedimientos o algoritmos de optimización.

su

El porcentaje de tiempo de CPU consumido por el proceso del kernel. Cuando el valor de Sy es alto, indica que el kernel consume muchos recursos de CPU.

Según la experiencia, el valor de referencia de us + sy es 80%, si us + sy es mayor que 80%, significa que puede haber recursos de CPU insuficientes.

2. Utilice el comando sar para supervisar la CPU del sistema.

sar realiza estadísticas separadas en cada aspecto del sistema, pero aumentará la sobrecarga del sistema, pero la sobrecarga se puede evaluar y no tendrá un gran impacto en los resultados estadísticos del sistema.

La siguiente es la salida de estadísticas de la CPU del comando sar para un determinado sistema:

[root@webserver ~]# sar -u 3 5


Linux

2.6.9-42.ELsmp (webserver) 11/28/2008_i686_

(8 CPU)


11:41:24

AM CPU %user %nice%system

%iowait %steal %idle


11:41:27

AM all 0.88 0.00 0.29 0.00 0.00 98.83


11:41:30

AM all 0.13 0.00 0.17 0.21 0.00 99.50


11:41:33

AM all 0.04 0.00 0.04 0.00 0.00 99.92


11:41:36

AM all 90.08 0.00 0.13 0.16 0.00 9.63


11:41:39

AM all 0.38 0.00 0.17 0.04 0.00 99.41


Average:

all 0.34 0.00 0.16 0.05 0.00 99.45

La salida se explica de la siguiente manera:

  1. %user列显示了用户进程消耗的CPU 时间百分比。

  2. %nice列显示了运行正常进程所消耗的CPU 时间百分比。

  3. %system列显示了系统进程消耗的CPU时间百分比。

  4. %iowait列显示了IO等待所占用的CPU时间百分比

  5. %steal列显示了在内存相对紧张的环境下pagein强制对不同的页面进行的steal操作 。

  6. %idle列显示了CPU处在空闲状态的时间百分比。

  7. 问题

¿Alguna vez se ha encontrado con el fenómeno de que la utilización general de la CPU del sistema no es alta y la aplicación es lenta?

En un sistema con varias CPU, si el programa utiliza un solo subproceso, se producirá un fenómeno de este tipo. La tasa general de utilización de la CPU no es alta, pero la aplicación del sistema responde con lentitud. Esto puede deberse a que el único subproceso está utilizando El uso de una CPU hace que la tasa de ocupación de la CPU sea del 100%, incapaz de procesar otras solicitudes, mientras que otras CPU están inactivas, lo que conduce a un bajo uso general de la CPU y aplicaciones lentas.

2.3.1 Evaluación del desempeño de la memoria

1. Use el comando libre para monitorear la memoria

free es el comando más comúnmente utilizado para monitorear el uso de la memoria de Linux, vea el siguiente resultado:

[root@webserver ~]# free -m


total

used freeshared

buffers cached


Mem:

8111 7185 926 0 243 6299


-/+

buffers/cache:

643 7468


Swap:

8189 0 8189

Formula empírica:

  1. 应用程序可用内存/系统物理内存>70%,表示系统内存资源非常充足,不影响系统性能;

  2. 应用程序可用内存/系统物理内存<20%,表示系统内存资源紧缺,需要增加系统内存;

  3. 20%<应用程序可用内存/系统物理内存<70%,表示系统内存资源基本能满足应用需求,暂时不影响系统性能

2. Use el comando vmstat para monitorear la memoria

[root@node1

~]#

vmstat 2 3


procs

———–memory———- —swap– —–io—- –system– —–cpu——


r b swpd freebuff cache si so bi bo incs us sy idwa st


0 0 0 162240 8304 67032 0 0 13 21 1007 23 0 1 98 0 0


0 0 0 162240 8304 67032 0 0 1 0 1010 20 0 1 100 0 0


0 0 0 162240 8304 67032 0 0 1 1 1009 18 0 1 99 0 0

memoria

  1. swpd--切换到内存交换区的内存数量(k为单位)。如swpd值偶尔非0,不影响系统性能

  2. free--当前空闲的物理内存数量(k为单位)

  3. buff--buffers cache的内存数量,一般对块设备的读写才需要缓冲

  4. cache--page cached的内存数量

Generalmente, como un sistema de archivos almacena en caché, los archivos a los que se accede con frecuencia se almacenarán en caché. Si el valor de la caché es mayor, significa que hay más archivos en la caché. Si el bi en IO es menor en este momento, significa que la eficiencia de el sistema de archivos es mejor.

intercambiar

  1. si--由磁盘调入内存,也就是内存进入内存交换区的数量。

  2. so--由内存调入磁盘,也就是内存交换区进入内存的数量。

Los valores de si y so no son 0 durante mucho tiempo, lo que indica que la memoria del sistema es insuficiente. Necesita aumentar la memoria del sistema.

2.4.1 Evaluación del rendimiento de E / S de disco

1. Conceptos básicos del almacenamiento en disco

Los archivos o datos a los que se accede con frecuencia utilizan la lectura y escritura de la memoria en lugar de la E / S directa del disco tanto como sea posible , lo que es mil veces más eficiente.

Separe los archivos de lectura y escritura frecuentes de los archivos sin cambios a largo plazo y colóquelos en diferentes dispositivos de disco.

Para los datos que se escriben con frecuencia, puede considerar el uso de dispositivos sin procesar en lugar de sistemas de archivos.

Ventajas del equipo desnudo:

  1. 数据可直接读写,不需经过操作系统级缓存,节省内存资源,避免内存资源争用;

  2. 避免文件系统级维护开销,如文件系统需维护超级块、I-node等;

  3. 避免了操作系统cache预读功能,减少了I/O请求

Las desventajas de utilizar equipos en bruto son:

La gestión de datos y la gestión del espacio no son flexibles y requieren personal muy profesional para operar.

2. Utilice iostat para evaluar el rendimiento del disco

[root@webserver ~]# iostat -d 2 3

Linux

2.6.9-42.ELsmp (webserver) 12/01/2008_i686_

(8 CPU)

Device:

tps Blk_read/sBlk_wrtn/sBlk_read

Blk_wrtn

sda 1.87 2.58 114.12 6479462 286537372

Device:

tps Blk_read/sBlk_wrtn/sBlk_read

Blk_wrtn

sda

0.00 0.00 0.00 0 0

Device:

tps Blk_read/sBlk_wrtn/sBlk_read

Blk_wrtn

sda

1.00 0.00 12.00 0 24

La explicación es la siguiente:

  1. Blk_read/s--每秒读取数据块数

  2. Blk_wrtn/s--每秒写入数据块数

  3. Blk_read--读取的所有块数

  4. Blk_wrtn--写入的所有块数

Puede obtener una comprensión básica del rendimiento de lectura y escritura del disco a través de los valores de Blk_read / sy Blk_wrtn / s.
Si el valor de Blk_wrtn / s es grande, significa que las operaciones de escritura del disco son frecuentes. Considere optimizar el disco o el programa
. Indica que hay muchas operaciones de lectura directa del disco, y los datos leídos se pueden guardar en la memoria

Las reglas siguen:

La lectura y escritura de datos grandes a largo plazo son definitivamente anormales, y esta situación definitivamente afectará el rendimiento del sistema.

3. Utilice sar para evaluar el rendimiento del disco

Mediante la combinación "sar -d", puede realizar estadísticas básicas sobre la E / S de disco del sistema. Consulte el siguiente resultado:

[root@webserver ~]# sar -d 2 3


Linux

2.6.9-42.ELsmp (webserver) 11/30/2008_i686_

(8 CPU)


11:09:33

PM DEV tps rd_sec/swr_sec/savgrq-sz

avgqu-sz await svctm %util


11:09:35

PM dev8-0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00


11:09:35

PM DEV tps rd_sec/swr_sec/savgrq-sz

avgqu-sz await svctm %util


11:09:37

PM dev8-0 1.00 0.00 12.00 12.00 0.00 0.00 0.00 0.00


11:09:37

PM DEV tps rd_sec/swr_sec/savgrq-sz

avgqu-sz await svctm %util


11:09:39

PM dev8-0 1.99 0.00 47.76 24.00 0.00 0.50 0.25 0.05


Average:

DEV tps rd_sec/swr_sec/savgrq-sz

avgqu-sz await svctm %util


Average:

dev8-0 1.00 0.00 19.97 20.00 0.00 0.33 0.17 0.02

Significado del parámetro:

  1. await--平均每次设备I/O操作等待时间(毫秒)

  2. svctm--平均每次设备I/O操作的服务时间(毫秒)

  3. %util--一秒中有百分之几的时间用于I/O操作

Criterios para evaluar el rendimiento de E / S del disco:

El svctm normal debería ser menor que el valor de espera, y svctm está relacionado con el rendimiento del disco. La carga de la CPU y la memoria también afectarán el valor de svctm. Las solicitudes excesivas también aumentarán indirectamente el valor de svctm.

  1. await值取决svctm和I/O队列长度以及I/O请求模式,

  2. 如果svctm的值与await很接近,表示几乎没有I/O等待,磁盘性能很好,

  3. 如果await的值远高于svctm的值,则表示I/O队列等待太长,系统上运行的应用程序将变慢,

  4. 此时可以通过更换更快的硬盘来解决问题。

% util: indicadores importantes para medir la E / S del disco,

Si% util está cerca del 100%, significa que el disco genera demasiadas solicitudes de E / S y que el sistema de E / S ya está funcionando a plena capacidad y el disco puede tener un cuello de botella.

El programa se puede optimizar o reemplazar un disco más alto y más rápido.

2.5.1. Evaluación del desempeño de la red

  1. (1)通过ping命令检测网络的连通性

  2. (2)通过netstat –i组合检测网络接口状况

  3. (3)通过netstat –r组合检测系统的路由表信息

  4. (4)通过sar –n组合显示系统的网络运行状态

Tres ajustes del rendimiento del servidor Linux

1. Ajuste el algoritmo elevador del kernel de Linux para la E / S de disco

Después de seleccionar el sistema de archivos, el algoritmo puede equilibrar los requisitos de baja latencia, recopilar suficientes datos y organizar eficazmente las solicitudes de lectura y escritura del disco.

2. Deshabilite demonios innecesarios para ahorrar memoria y recursos de CPU

  1. 许多守护进程或服务通常非必需,消耗宝贵内存和CPU时间。将服务器置于险地。

  2. 禁用可加快启动时间,释放内存。

  3.  
  4. 减少CPU要处理的进程数

Algunos demonios de Linux que deberían estar deshabilitados, se ejecutan automáticamente de forma predeterminada:

Descripción del demonio de número de serie
1 Demonio de administración de energía avanzada
de Apmd 2 Nfslock para el bloqueo de archivos NFS
3 Soporte ISDN Moderm de Isdn
4 Autofs monta automáticamente el sistema de archivos en segundo plano (por ejemplo, monta automáticamente el CD-ROM)
5 Agente de transferencia de correo Sendmail
6 Xfs X Window Font servidor

3. GUI relacionada

4. Limpiar módulos o funciones innecesarios

Demasiadas funciones o módulos activados en el paquete de software del servidor en realidad no son necesarios (como muchos módulos funcionales en Apache). Desactivarlo ayudará a aumentar la cantidad de memoria del sistema disponible, liberará recursos para el software que realmente lo necesita y permitirá Corren más rápido.

5. Deshabilite el panel de control

En Linux, hay muchos paneles de control populares, como Cpanel, Plesk, Webmin y phpMyAdmin. Al deshabilitarlos, se liberan aproximadamente 120 MB de memoria y el uso de memoria se reduce en aproximadamente un 30-40%.

6. Mejore el rendimiento del servidor Linux Exim

El uso del demonio de caché de DNS puede reducir el ancho de banda y el tiempo de CPU necesarios para resolver los registros de DNS. La caché de DNS mejora el rendimiento de la red al eliminar la necesidad de buscar registros de DNS desde el nodo raíz cada vez.

Djbdns es un servidor DNS muy potente, tiene función de caché de DNS, Djbdns es más seguro y tiene un mejor rendimiento que el servidor DNS BIND, se puede descargar directamente a través de http://cr.yp.to/, o mediante el paquete de software proporcionado por Obtener Red Hat.

7. Utilice AES256 para mejorar la seguridad del cifrado de archivos gpg

Para mejorar la seguridad de los archivos de respaldo o la información confidencial, muchos administradores de sistemas Linux usan gpg para el cifrado. Cuando se usa gpg, es mejor especificar gpg para usar el algoritmo de cifrado AES256 y AES256 para usar una clave de 256 bits. es un algoritmo de cifrado abierto que la Agencia de Seguridad Nacional (NSA) lo utiliza para proteger información ultrasecreta.

8. Seguridad del servicio de respaldo remoto

La seguridad es el factor más importante al elegir un servicio de respaldo remoto.La mayoría de los administradores del sistema temen dos cosas: (los piratas informáticos) pueden eliminar los archivos de respaldo y no pueden restaurar el sistema desde el respaldo.

Para garantizar el 100% de la seguridad de los archivos de respaldo, la empresa de servicios de respaldo proporciona un servidor de respaldo remoto que usa script scp o RSYNC para transferir datos a través de SSH, de modo que nadie pueda ingresar y acceder directamente al sistema remoto, por lo tanto, nadie puede eliminar datos del servicio de respaldo. Al elegir un proveedor de servicios de respaldo remoto, es mejor comprender la solidez de sus servicios desde múltiples aspectos; si puede, puede probarlo usted mismo.

9. Actualice la configuración predeterminada de los parámetros del kernel.

Para ejecutar aplicaciones empresariales sin problemas y con éxito, como servidores de bases de datos, es posible que sea necesario actualizar algunas configuraciones predeterminadas de los parámetros del kernel. Por ejemplo, el parámetro de cola de mensajes del kernel de la serie 2.4.x msgmni tiene un valor predeterminado (por ejemplo, memoria compartida, o shmmax en sistemas Red Hat El valor predeterminado anterior es solo 33554432 bytes), lo que solo permite conexiones simultáneas limitadas a la base de datos. A continuación, se proporcionan algunos valores sugeridos para un mejor funcionamiento del servidor de base de datos (del sitio web de soporte de IBM DB2):

kernel.shmmax = 268435456 (32 位)
kernel.shmmax = 1073741824 (64 位)
kernel.msgmni = 1024
fs.file-max = 8192
kernel.sem = ”250 32000 32 1024 ″

10. Optimizar TCP

La optimización del protocolo TCP ayuda a aumentar el rendimiento de la red. Cuanto mayor sea el ancho de banda utilizado para la comunicación entre WAN y mayor el tiempo de retardo, se recomienda utilizar un tamaño de TCP Linux mayor para aumentar la velocidad de transmisión de datos. El tamaño de TCP Linux determina la cantidad de datos que se pueden enviar al host receptor cuando no se recibe la confirmación de la transmisión de datos.

11. Elija el sistema de archivos correcto

Utilice el sistema de archivos ext4 en lugar de ext3

● Ext4 es una versión mejorada del sistema de archivos ext3, que extiende el límite de almacenamiento

● Con función de registro para garantizar un alto nivel de integridad de los datos (en caso de apagado anormal)

● No es necesario verificar el disco durante un apagado y reinicio anormales (esta es una acción que requiere mucho tiempo)

● Velocidad de escritura más rápida, el registro ext4 optimiza el movimiento del cabezal del disco duro

12. Utilice la opción de montaje del sistema de archivos noatime

Use la opción noatime en el archivo de configuración de inicio del sistema de archivos fstab. Si se usa almacenamiento externo, esta opción de montaje puede mejorar el rendimiento de manera efectiva.

13. Ajuste el límite del descriptor de archivos de Linux

Linux limita la cantidad de descriptores de archivos que se pueden abrir con cualquier proceso. El límite predeterminado es 1024 por proceso. Estos límites pueden impedir que los clientes de referencia (como http: http: // apachebench) y el servidor web en sí logren el mejor rendimiento. Apache usa uno Por lo tanto, los procesos no se ven afectados, pero los servidores web de un solo proceso como Zeus usan un descriptor de archivo por conexión, por lo que se ven afectados fácilmente por las restricciones predeterminadas.

El límite de archivos abiertos es un límite que se puede ajustar con el comando ulimit. El comando ulimit -aS muestra el límite actual, y el comando ulimit -aH muestra el límite estricto (no puede aumentar el límite antes de ajustar los parámetros del kernel en / proc ).

Habilidades de rendimiento de aplicaciones de terceros de Linux

Para las aplicaciones de terceros que se ejecutan en Linux, también existen muchas técnicas de optimización del rendimiento que pueden ayudarlo a mejorar el rendimiento de los servidores Linux y reducir los costos operativos.

14. Configure MySQL correctamente

Para asignar más memoria a MySQL, puede establecer el tamaño de la caché de MySQL. Si la instancia del servidor MySQL usa más memoria, reduzca el tamaño de la caché. Si MySQL está estancado cuando aumentan las solicitudes, aumente la caché de MySQL.

15. Configure Apache correctamente

Compruebe cuánta memoria utiliza Apache y luego ajuste los parámetros StartServers y MinSpareServers para liberar más memoria, lo que le ayudará a ahorrar entre un 30 y un 40% de la memoria.

16. Analizar el rendimiento del servidor Linux

La mejor manera de mejorar la eficiencia del sistema es encontrar el cuello de botella que hace que la velocidad general disminuya y resolverlo. A continuación, se muestran algunas técnicas básicas para encontrar el cuello de botella clave del sistema:

● Cuando se ejecutan aplicaciones de gran tamaño como OpenOffice y Firefox al mismo tiempo, es posible que la computadora comience a ralentizarse y la probabilidad de que no haya suficiente memoria es mayor.

● Si el inicio es muy lento, la aplicación puede tardar mucho en cargarse por primera vez y se ejecutará normalmente una vez iniciada; de lo contrario, es probable que el disco duro sea demasiado lento.

● La carga de la CPU sigue siendo alta y la memoria es suficiente, pero la utilización de la CPU es muy baja. Puede utilizar la herramienta de análisis de carga de la CPU para controlar el tiempo de carga.

17. Aprenda 5 comandos de rendimiento de Linux

Utilice algunos comandos para administrar el rendimiento del sistema Linux. A continuación se enumeran los cinco comandos de rendimiento de Linux más utilizados, incluidos
top, vmstat, iostat, free y sar , que ayudan a los administradores del sistema a resolver rápidamente los problemas de rendimiento.

(1) arriba

La tarea del servicio del kernel actual también muestra estadísticas sobre el estado de muchos hosts y, por defecto, se actualiza automáticamente cada 5 segundos.
Tales como: tiempo de actividad actual, carga del sistema, número de procesos y uso de memoria,

Además, este comando también muestra los procesos que utilizan la mayor parte del tiempo de CPU (incluida información diversa sobre cada proceso, como usuarios en ejecución, comandos ejecutados, etc.).

(2) vmstat

El comando Vmstat proporciona una instantánea del uso actual de CPU, E / S, proceso y memoria. Es similar al comando superior y actualiza automáticamente los datos, como:

$ vmstat 10

(3) iostato

Iostat proporciona tres informes: utilización de CPU, utilización de dispositivos y utilización del sistema de archivos de red. Estos tres informes se pueden mostrar de forma independiente mediante los parámetros -c, -d y -h.

(4) gratis

Muestra las estadísticas de la memoria principal y del espacio de intercambio. Especifique el parámetro -t para mostrar la memoria total, especifique el parámetro -b en bytes y use -m para usar megabytes como unidad. Por defecto, kilobytes son la unidad.

El comando Free también puede usar el parámetro -s más un tiempo de retardo (unidad: segundo) para ejecutarse continuamente, como:

$ gratis -s 5

(5) sar

Recopile, vea y registre datos de rendimiento. Este comando tiene un historial más largo que los comandos anteriores. Puede recopilar y mostrar datos durante un período de tiempo más largo.

otro

A continuación, se muestran algunos consejos de rendimiento clasificados como otros:

18. Transferir archivos de registro a la memoria

Cuando una máquina está en funcionamiento, es mejor almacenar el registro del sistema en la memoria y copiarlo en el disco duro cuando el sistema está apagado. Cuando ejecuta una computadora portátil o dispositivo móvil con syslog habilitado, ramlog puede ayudarlo a aumentar la vida útil de la batería del sistema o la unidad flash del dispositivo móvil, una ventaja de usar ramlog es que no tienes que preocuparte de que un demonio envíe un mensaje a syslog cada 30 segundos, y la batería está dañada.

19. Empaque primero, luego escriba

Un espacio de tamaño fijo se divide en la memoria para guardar el archivo de registro, lo que significa que el disco duro de la computadora portátil no necesita mantenerse funcionando. Solo se ejecuta cuando un demonio necesita escribir el registro. Tenga en cuenta que el espacio de memoria utilizado por ramlog es fijo; de lo contrario, la memoria del sistema se agotará rápidamente. Si el portátil utiliza una unidad de estado sólido, se pueden asignar de 50 a 80 MB de memoria a ramlog. Ramlog puede reducir muchos ciclos de escritura y aumentar considerablemente la vida útil del unidad de estado sólido.

20, habilidades generales de afinación

Utilice contenido estático en lugar de contenido dinámico tanto como sea posible . Si está generando pronósticos meteorológicos u otros datos que deben actualizarse cada 1 hora, es mejor escribir un programa que genere un archivo estático cada 1 hora en lugar de permitir que los usuarios ejecuten A CGI genera informes de forma dinámica.

Elija la API más rápida y adecuada para aplicaciones dinámicas. CGI puede ser la más fácil de programar, pero generará un proceso para cada solicitud. Por lo general, este es un proceso costoso e innecesario. FastCGI es la mejor opción, y mod_perl de Apache, puede mejorar enormemente el rendimiento de la aplicación.

Supongo que te gusta

Origin blog.csdn.net/grl18840839630/article/details/112306339
Recomendado
Clasificación