GNU/Linux >> Tutoriales Linux >  >> Linux

Uso del script Apache2Buddy para rendimiento y estabilidad

¿Qué es Apache2Buddy?

Use el script Apache2Buddy para ayudar a hacer recomendaciones para cambios en la configuración del servidor web Apache® que ayudan con el rendimiento y la estabilidad. Apache2Buddy no tiene impacto en el propio servidor y no realiza cambios. Después de que se ejecuta la secuencia de comandos, sugiere correcciones de Apache que puede examinar y considerar aplicar.

Apache2Buddy comprueba al menos las siguientes áreas de preocupación:

  • Límites de memoria PHP®
  • Memcache
  • Número máximo de clientes
  • Uso de memoria
  • Uso máximo de memoria potencial
  • Porcentaje de RAM total asignada a Apache
  • MaxRequestWorkers

Ejecutar Apache2Buddy

Ejecute el siguiente comando para iniciar el script desde una línea de comandos de Linux®:

curl -sL https://raw.githubusercontent.com/richardforth/apache2buddy/master/apache2buddy.pl | perl

Una vez que se completa el script de Apache2Buddy, devuelve algo similar al siguiente resultado:

Apache Tuning with Respect to RAM Footprint of Web Applications
--------------------------------------------------------------

The MaxClients setting in your Apache configuration allows your web application child processes 
to consume more RAM than is available on the server.
---
[ -- ] Distro: CentOS
[ -- ] Version: 6.9
[ -- ] Codename: Final
[ OK ] This distro is supported by apache2buddy.pl.
[ -- ] Hostname: Server-01
[ -- ] Primary IP: 123.45.67.890
[ -- ] Apache is using prefork model.
[ OK ] Memory usage of parent PID is less than 50MB: 8368 Kilobytes.
[ -- ] Apache has been running 21d 06h 49m 32s.
[ -- ] Your server has 5834 MB of PHYSICAL memory.
[ -- ] Your ServerLimit setting is 60.
[ -- ] Your MaxClients setting is 60.
[ OK ] Current Apache Process Count is 22, including the parent PID.
[ -- ] Number of vhosts detected: 17.
[ -- ]             |________ of which 13 are HTTP (specifically, port 80).
[ -- ]             |________ of which 4 are HTTPS (specifically, port 443).
[ OK ] Current Apache vHost Count is less than maxclients.
[ -- ] Your MaxRequestsPerChild setting is 2000.
[ -- ] Your PHP Memory Limit (Per-Process) is 128 MB.
[ -- ] MySQL Detected => Using 134.74 MB of memory.
[ OK ] No large logs files were found in /var/log/httpd.
[ OK ] MaxClients has not been hit recently.
[ !! ] PHP Fatal errors were found, see summaries below.
[ @@ ] Check the logs manually.
[ @@ ]  - /var/log/httpd/example.com-error.log-20200203: 3
[ @@ ]  - /var/log/httpd/example.com-error.log: 5
[ @@ ]  - /var/log/httpd/example2.com-error.log-20200203: 1
[ -- ] httpd is currently using 2384.92 MB of memory.
[ -- ] The smallest apache process is using 83.18 MB of memory
[ -- ] The average apache process is using 107.48 MB of memory
[ -- ] The largest apache process is using 133.83 MB of memory
[ !! ] Going by the average Apache process, Apache can potentially use 6448.81 MB RAM: 
Without considering services: 110.54 % of total installed RAM 
Considering extra services: 113.16 % of remaining RAM 
[ !! ] Going by the largest Apache process, Apache can potentially use 8029.81 MB RAM: 
Without considering services: 137.64 % of total installed RAM 
Considering extra services: 140.90 % of remaining RAM

--------------------------------------------------------------------------------
### GENERAL FINDINGS & RECOMMENDATIONS ###
--------------------------------------------------------------------------------

Apache2buddy.pl report for server: Server-01 (123.45.67.890):
Settings considered for this report:
  Your server's physical RAM:                                   5834 MB
  Remaining Memory after other services considered:             5699 MB
  Apache's MaxClients directive:                                60       <---- Current Setting    
  Apache MPM Model:                                             prefork
  Largest Apache process (by memory):                           133 MB
[ !! ]  Your MaxClients setting is too high.
Your recommended MaxClients setting is between 37 and 42.              <---- Acceptable Range (10% of MAX)
Max potential memory usage:                                   8029 MB
Percentage of TOTAL RAM allocated to Apache:                  137.64  %
Percentage of REMAINING RAM allocated to Apache:              140.90  %
--------------------------------------------------------------------------------

Revisar los resultados

También puede ver un resultado del script Apache2Buddy similar al siguiente ejemplo:

 [ !! ] Going by the average Apache process, Apache can potentially use 6448.81 MB RAM: 
 Without considering services:    110.54 % of total installed RAM 
 Considering extra services: 113.16 % of remaining RAM 
 [ !! ] Going by the largest Apache process, Apache can potentially use 8029.81 MB RAM: 
 Without considering services: 137.64 % of total installed RAM             
 Considering extra services: 140.90 % of remaining RAM

Debe saber que esta declaración hace las siguientes suposiciones:

  • Pasar por el proceso promedio de Apache :No todos los procesos de Apache son de tamaño medio. Algunos procesos pueden ser más grandes o más pequeños.
  • Sin considerar servicios :Apache2Buddyy intenta calcular el posible uso de memoria del servidor web Apache. No considera que la memoria disponible también se utilice para otras aplicaciones como PHP, MariaDB® y el propio sistema operativo.
  • Considerando servicios adicionales :Apache2Buddy intenta calcular lo posible uso de memoria del servidor web Apache mientras se hacen suposiciones sobre el uso de memoria de otras aplicaciones disponibles, lo que podría no ser correcto.

Nota :Debe considerar esta declaración proporcionada por Apache2Buddy como información sobre el peor de los casos. Es posible que deba investigar más para obtener claridad. Para obtener más información, consulte el siguiente enlace:https://richardforth.github.io/apache2buddy_ag/.


Linux
  1. ¿Cómo cambiar la longitud de línea predeterminada para Od y Hexdump?

  2. Diseñe y construya servidores en la nube para la estabilidad

  3. convención de nomenclatura para shell script y makefile

  4. Alcance variable para scripts y funciones bash shell en el script

  5. ¿Cuál es la razón por la que rmdir(1) y rm(1) coexisten?

Consejos para usar el comando superior en Linux

Prácticas recomendadas de DNS para seguridad y rendimiento

La guía completa para usar ffmpeg en Linux

Los 10 mejores cachés web de Linux para un mejor rendimiento

Las 5 mejores distribuciones de Linux para desarrolladores y programadores

Escritura y depuración de aplicaciones C++ de Linux desde Visual Studio mediante el subsistema de Windows para Linux