¿En el límite?

Recientemente me han estado llegando correos de DreamHost, donde hospedo mis sitios de que algunos servicios se han reiniciado, pero no tenia muy claro a que se podrían referir, especialmente porque hace referencia al uso de memoria:

“Our monitoring systems show that one (or some) of your user accounts may be making your web hosting account operate inefficiently.  We took a peek and noticed you’ve frequently hit the memory limits of your shared hosting plan over the last couple weeks.  Each time that happens, our automated process watcher system stops the associated process which negatively impacts your website performance.

Here are the FTP/shell users on your account, alongside the number of times they’ve hit their memory limits:

snafu: 213, foo: 889

If you’re happy with the performance of your site, then we are too! Your site may continue to run into your shared hosting plan’s resource limits, and our automated system will restart your hosting processes as necessary.”

Y en alguna época ya tuve que revisar al respecto, ya que tenia más bien muchos procesos que consumían CPU, cosa que logre arreglar actualizando mis sitios y asegurándome que podían usar la versión mas nueva de php, que esta disponible, buscando como dice en la KB de DreamHost como optimizar mi sitio, me encuentro conque tengo activado en foo el análisis de uso de CPU [1]…

foo@bar:~/logs/resources$ more foo.sa.analyzed.*

::::::::::::::
 foo.sa.analyzed.0
 ::::::::::::::

Process               CPU seconds      user   machine   count  average
 php56.cgi               1857.7200   99.589%    7.741%     164   11.328
 php                        4.5200    0.242%    0.019%       6    0.753
 du                         1.5000    0.080%    0.006%       4    0.375
 mysqldump                  0.8700    0.047%    0.004%       3    0.290
 find                       0.5400    0.029%    0.002%      11    0.049
 sshd                       0.1500    0.008%    0.001%       1    0.150
 bash                       0.0800    0.004%    0.000%       2    0.040
 crontab                    0.0100    0.001%    0.000%       1    0.010
 perl                       0.0000    0.000%    0.000%       1    0.000
 perl                       0.0000    0.000%    0.000%       1    0.000
 dirname                    0.0000    0.000%    0.000%      12    0.000
 postdrop                   0.0000    0.000%    0.000%       1    0.000
 which                      0.0000    0.000%    0.000%       3    0.000
 sendmail                   0.0000    0.000%    0.000%       1    0.000
 wc                         0.0000    0.000%    0.000%      25    0.000
 grep                       0.0000    0.000%    0.000%      69    0.000
 sh                         0.0000    0.000%    0.000%       3    0.000
 ls                         0.0000    0.000%    0.000%      22    0.000
 readlink                   0.0000    0.000%    0.000%       3    0.000
 more                       0.0000    0.000%    0.000%      15    0.000
 basename                   0.0000    0.000%    0.000%       6    0.000
 sh                         0.0000    0.000%    0.000%      15    0.000
 ----------------------------------------------------------------------
 Total:                  1865.3900  100.000%    7.772%     369
 Average per day:        1865.3900    1 days

CPU percentage assumes 24000 cpu seconds per day total.

::::::::::::::
 foo.sa.analyzed.1
 ::::::::::::::

Process               CPU seconds      user   machine   count  average
php56.cgi               2085.8300   99.731%    8.691%     196   10.642
php                        4.8800    0.233%    0.020%       6    0.813
mysqldump                  0.7500    0.036%    0.003%       3    0.250
perl                       0.0000    0.000%    0.000%       2    0.000
bash                       0.0000    0.000%    0.000%       1    0.000
dirname                    0.0000    0.000%    0.000%      12    0.000
readlink                   0.0000    0.000%    0.000%       3    0.000
postdrop                   0.0000    0.000%    0.000%       1    0.000
which                      0.0000    0.000%    0.000%       3    0.000
basename                   0.0000    0.000%    0.000%       6    0.000
sendmail                   0.0000    0.000%    0.000%       1    0.000
sh                         0.0000    0.000%    0.000%      15    0.000
sh                         0.0000    0.000%    0.000%       3    0.000

----------------------------------------------------------------------

Total:                  2091.4600  100.000%    8.714%     252
Average per day:        2091.4600    1 days
CPU percentage assumes 24000 cpu seconds per day total.

::::::::::::::
foo.sa.analyzed.2
::::::::::::::

Process               CPU seconds      user   machine   count  average
php56.cgi               1533.9300   99.564%    6.391%     223    6.879
php                        5.8200    0.378%    0.024%       6    0.970
mysqldump                  0.8900    0.058%    0.004%       3    0.297
perl                       0.0000    0.000%    0.000%       2    0.000
bash                       0.0000    0.000%    0.000%       1    0.000
dirname                    0.0000    0.000%    0.000%      12    0.000
readlink                   0.0000    0.000%    0.000%       3    0.000
postdrop                   0.0000    0.000%    0.000%       1    0.000
which                      0.0000    0.000%    0.000%       3    0.000
basename                   0.0000    0.000%    0.000%       6    0.000
sendmail                   0.0000    0.000%    0.000%       1    0.000
sh                         0.0000    0.000%    0.000%      15    0.000
sh                         0.0000    0.000%    0.000%       3    0.000

----------------------------------------------------------------------

Total:                  1540.6400  100.000%    6.419%     279
Average per day:        1540.6400    1 days
CPU percentage assumes 24000 cpu seconds per day total.

::::::::::::::
foo.sa.analyzed.3
::::::::::::::

Process               CPU seconds      user   machine   count  average
php56.cgi               3101.5800   99.823%   12.923%     356    8.712
php                        4.4400    0.143%    0.018%       6    0.740
mysqldump                  1.0500    0.034%    0.004%       3    0.350
perl                       0.0100    0.000%    0.000%       1    0.010
bash                       0.0000    0.000%    0.000%       1    0.000
dirname                    0.0000    0.000%    0.000%      12    0.000
readlink                   0.0000    0.000%    0.000%       3    0.000
postdrop                   0.0000    0.000%    0.000%       1    0.000
which                      0.0000    0.000%    0.000%       3    0.000
basename                   0.0000    0.000%    0.000%       6    0.000
sendmail                   0.0000    0.000%    0.000%       1    0.000
sh                         0.0000    0.000%    0.000%      15    0.000
sh                         0.0000    0.000%    0.000%       3    0.000

----------------------------------------------------------------------

Total:                  3107.0800  100.000%   12.946%     411
Average per day:        3107.0800    1 days

CPU percentage assumes 24000 cpu seconds per day total.

::::::::::::::
foo.sa.analyzed.4
::::::::::::::

Process               CPU seconds      user   machine   count  average
php56.cgi               2799.7100   99.804%   11.665%     183   15.299
php                        4.6500    0.166%    0.019%       6    0.775
mysqldump                  0.8400    0.030%    0.003%       3    0.280
perl                       0.0000    0.000%    0.000%       2    0.000
bash                       0.0000    0.000%    0.000%       1    0.000
dirname                    0.0000    0.000%    0.000%      12    0.000
readlink                   0.0000    0.000%    0.000%       3    0.000
postdrop                   0.0000    0.000%    0.000%       1    0.000
which                      0.0000    0.000%    0.000%       3    0.000
basename                   0.0000    0.000%    0.000%       6    0.000
sendmail                   0.0000    0.000%    0.000%       1    0.000
sh                         0.0000    0.000%    0.000%      15    0.000
sh                         0.0000    0.000%    0.000%       3    0.000

----------------------------------------------------------------------

Total:                  2805.2000  100.000%   11.688%     239
Average per day:        2805.2000    1 days

CPU percentage assumes 24000 cpu seconds per day total.

::::::::::::::
foo.sa.analyzed.5
::::::::::::::

Process               CPU seconds      user   machine   count  average
php56.cgi               2790.0400   99.822%   11.625%     202   13.812
php                        4.1900    0.150%    0.017%       6    0.698
mysqldump                  0.7800    0.028%    0.003%       3    0.260
perl                       0.0000    0.000%    0.000%       9    0.000
bash                       0.0000    0.000%    0.000%       1    0.000
dirname                    0.0000    0.000%    0.000%      12    0.000
readlink                   0.0000    0.000%    0.000%       3    0.000
postdrop                   0.0000    0.000%    0.000%       1    0.000
which                      0.0000    0.000%    0.000%       3    0.000
basename                   0.0000    0.000%    0.000%       6    0.000
sendmail                   0.0000    0.000%    0.000%       1    0.000
sh                         0.0000    0.000%    0.000%      15    0.000
sh                         0.0000    0.000%    0.000%       3    0.000

----------------------------------------------------------------------

Total:                  2795.0100  100.000%   11.646%     265
Average per day:        2795.0100    1 days
CPU percentage assumes 24000 cpu seconds per day total.

::::::::::::::
foo.sa.analyzed.6
::::::::::::::

Process               CPU seconds      user   machine   count  average
php56.cgi               2451.7000   99.793%   10.215%     287    8.543
php                        4.2900    0.175%    0.018%       6    0.715
mysqldump                  0.7900    0.032%    0.003%       3    0.263
perl                       0.0000    0.000%    0.000%       4    0.000
bash                       0.0000    0.000%    0.000%       1    0.000
dirname                    0.0000    0.000%    0.000%      12    0.000
readlink                   0.0000    0.000%    0.000%       3    0.000
postdrop                   0.0000    0.000%    0.000%       1    0.000
which                      0.0000    0.000%    0.000%       3    0.000
basename                   0.0000    0.000%    0.000%       6    0.000
sendmail                   0.0000    0.000%    0.000%       1    0.000
sh                         0.0000    0.000%    0.000%       3    0.000

----------------------------------------------------------------------

Total:                  2456.7800  100.000%   10.237%     345
Average per day:        2456.7800    1 days

CPU percentage assumes 24000 cpu seconds per day total.

foo@bar:~/logs/resources$ ls -lah

total 184K

drwxr-xr-x  2 foo root     4.0K Aug 31 07:47 .
dr-xr-x--- 15 foo dhapache 4.0K Dec 24  2011 ..
-rw-r-xr-x  1 foo root        0 Jul 18  2006 access.log
-rw-r-xr-x  1 foo root        0 Jul 18  2006 error.log
-rwxr-xr-x  1 foo root     2.5K Mar 12  2010 sa.analysis.pl
-rw-r-xr-x  1 foo root        0 Aug 31 07:47 foo.sa.analyzed
-rw-r-xr-x  1 foo root     1.9K Aug 31 07:47 foo.sa.analyzed.0
-rw-r-xr-x  1 foo root     1.2K Aug 30 07:47 foo.sa.analyzed.1
-rw-r-xr-x  1 foo root     1.2K Aug 29 07:47 foo.sa.analyzed.2
-rw-r-xr-x  1 foo root     1.2K Aug 28 07:47 foo.sa.analyzed.3
-rw-r-xr-x  1 foo root     1.2K Aug 27 07:47 foo.sa.analyzed.4
-rw-r-xr-x  1 foo root     1.2K Aug 26 07:47 foo.sa.analyzed.5
-rw-r-xr-x  1 foo root     1.2K Aug 25 07:47 foo.sa.analyzed.6

Y después de revisar esto y los errores, encuentro que del 26 al 29 de agosto:

$ zgrep ModSecurity  error.log.*.gz | wc
29    1097   13226

$ zgrep Premature  error.log.*.gz | wc
58     828    7996

Según el propio KB, cuando se queda sin memoria php se encontraran en los logs “Premature end of script headers” y a mi me interesaba saber cuantas veces ModSecuriy detuvo un proceso, ya que estoy casi seguro que eso debe de afectar también.

Es decir me quedé 58 veces sin memoria en los procesos PHP… o al menos eso dicen los logs… entonces me quedo con la idea de que no estoy tan apretado con mi sitio,  dicho sea de paso de snafu apenas active lo de la revisión del CPU tengo curiosidad de ver que tal va, según leo en la documentación se asumen como limite 300 minutos al día, en el propio reporte dice que toma 24000 segundos totales, es decir 400 minutos en mi día más ocupado utilice 3107, que son casi 52 minutos, entonces creo que estoy no tan mal.

Ya con datos de snafu, resulta que uso mucho más procesador en el mismo, estando normalmente en los 3000 segundos.

Supongo entonces que más bien me quieren vender que funciona mucho mejor su siguiente producto, el VPS, con memoria dedicada y discos duros de estado solido, lo cual es muy probable, pero el costo no me emociona.

Esto hizo que me preguntara un rato que tanto estoy hosteando e hiciera un rápido inventario de lo mismo y lo que quedo de lo que si uso:

5.61 MB         rradiko.com
103.26 MB       kermatronic.com
167.25 MB       wiki.animeproject.org
334.77 MB       historico.animeproject.org
2.01 GB          anaserradilla.org
2.38 GB          blografia.net
10.33 GB        cobacha.animeproject.org
12.05 GB        ociologia.org
22.93 GB        ociologos.org
4.40 GB          anime-project.org

Y después de quitar ociologia y ociologos que tienen fotos y/o mirror de sitios ya desaparecidos pero que si me interesan, casi que entro en un VPS con 20GB de disco duro de estado solido no necesariamente en DH, ya que para VPS se me ocurren opciones mejores como Digital Ocean, Linode o hasta OVH.

Pero Dreamhost me provee de un panel sin demasiadas complicaciones al que ya me acostumbre, bastante espacio, un desempeño aceptable para lo que realizo y un costo igual, el ejercicio me ayudo para pensar en un montón de cosas que debo de empezar a dejar ir, varios nombres de dominios y páginas que ya no uso y no parece que vaya a usar y un montón de archivos de respaldo de proyectos y trabajos que también ya acabaron y se acumularon con el tiempo, resultado, puedo moverme a un mejor servicio, pero tendría que dedicarle un tanto mas de trabajo sobre todo al migrar y configurar los mismos, cosa que pudiera ser útil, pero no urgente o necesario y que no tengo deseo de hacer.

La opción del VPS con DH no me conviene por el lado del costo, se va muy por encima de lo que me gustaría pagar y no me ofrece mayores beneficios que la competencia, para mis necesidades.

PS. foo corresponde con mi sitio de monos ojones animeproject y snafu con blografia, pero no me parece útil poner el nombre de servidor ni los usuarios que uso ;) ¡me lleve una sorpresa de que parece ser más popular y usar mayores recursos mi sitio de blogs que mi sitio de monos ojones!

Esta entrada ha sido publicada en General, planetalinux, sysadmin, Web y etiquetada como , , , , , , , , . Guarda el enlace permanente.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.