Menéame y su efecto ya no son lo que eran, o eso o he preparado muy bien el servidor para aguantar el tráfico. Voy a pasar a explicar la historia completa sobre el comportamiento del servidor y cómo me preparé para una circunstancia así, en la que he conseguido no sólo seguir navegando sin complicaciones durante el meneo, sino que el blog no se cayese y el servidor aguantase todo el tráfico y todas las peticiones.
El día 21 menearon la entrada De los Erasmus españoles pero no llegó a portada hasta el día siguiente hacia las 19:50 (aprox.). La verdad es que yo ya no contaba con que saliese publicada. Había recibido unas 600 visitas de Menéame y Facebook el día que la menearon, pero no parecía que llegase a portada por los pocos meneos que tenía. Eso sí, tenía muchos «clics».
Lo primero que quería comentar acerca de Menéame es que parece que ha perdido muchos usuarios y que han cambiado el algoritmo. En la ¿mejor? época de Menéame hacían falta más de 200 meneos para llegar a portada, si no recuerdo mal. Probablemente ambas cosas hayan pasado hace tiempo, pero ya no me fijo en ello. El caso es que la última vez que miré el meneo, antes de su publicación, apenas 30 personas lo habían meneado. Imagino que entró en «populares» por la cantidad de «clics» y de ahí acabó en portada. No lo voy a negar, yo también animé a mis contactos en Facebook a que la meneasen, no sé si muchos lo hicieron.
A las 20:00 me llega un correo de mi monitorización local avisándome de que el Apache está usando 150 conexiones. Luego otro con 180 conexiones con el que, de paso, reiniciaba el apache, cosa que se ve perfectamente en la memoria libre disponible en ese momento.
La buena fortuna quiso que tuviese terminada la monitorización gráfica un día antes de que el meneo se publicase, aunque me di cuenta de que estaba monitorizando mal el uso de memoria y CPU de Apache MySQL, monitorizando un solo proceso de los muchos que había lanzados.
Tengo que decir que mis dos blog son extremadamente modestos, Turismo Google hace unas 250-300 visitas diarias (sigo trabajando en él, a ver si despega) y La puerta de Tannhauser unas 100 150, por lo que las estadísticas de tráfico saliente un día normal son así:
Trafico saliente en Deimos en un día normal:
Bien, el día que salió la noticia a portada del Menéame esto fue lo que ocurrió:
Estadísticas de salud de Deimos el día del meneo:
Lo que me lleva a la conclusión de que el efecto menéame es principalmente el pico de los primeros 20-30 minutos después de salir el artículo a la portada, y luego un tráfico sostenido durante bastantes horas. Aunque imagino que también dependerá del tipo de artículo. En cualquier caso la monitorización respondió perfectamente y mantuvo la página arriba. No se disparó ninguna otra alarma (aunque probablemente si hubiese monitorizado correctamente la memoria y CPU del Apache sí lo habría hecho).
Mi blog dice que tiene unas 22 000 visitas; Menéame dice que me ha redireccionado más de 17 500. Con Google Analytics y StatCounter en la mano, veo que algunos volvieron más tarde a la entrada sin un URL de referencia, es decir, tráfico directo, más las referencias de Twitter, Facebook y correo electrónico.
Estadísticas de Google Analytics para el meneo:
Principales fuentes de tráfico en los últimos días
Estadísticas de StatCounter para el meneo:
Ahora paso a explicar la monitorización. Existen varios motivos por los que el blog no se cayó y siguió sirviendo páginas. Uno es la monitorización y el otro es la configuración de Apache.
Respecto a la monitorización para la web, tengo varios scripts que me avisan de lo siguiente:
Además, tengo monitorización externa en monitor.us, servicio gratuito que me proporciona informes de disponibilidad de los dos blogs, enviandome un correo si se cae alguno.
Esa es la monitorización automática, luego tengo las gráficas que las compruebo cuando quiero. Muy interesantes el día del meneo y el día después.
Por último está la configuración predeterminada de Apache que no sirve para aguantar más que un tráfico muy pequeño. La memoria que usa, el número de procesos, etc.
Hace mucho tiempo (6 ó 7 años), cuando también hospedaba el blog en mi servidor casero de Valladolid, sufrí varios meneos y efectos barrapunto que tiraron el blog abajo varias veces. No quería que me volviese a pasar, así que me dediqué a indagar cómo configurar un poco mejor el servidor. Creo recordar que cuando el blog estaba hospedado en la Universidad de Valladolid también se llegó a caer por otro efecto menéame.
Ya para terminar, hace un mes aproximadamente, pedí a unos cuantos amigos que lanzasen el LOIC contra la web, a ver si aguantaba. Con 5 ó 6 LOIC a la vez el blog aguantaba pero la respuesta era lenta. No es una maravilla pero no está mal.
Eso sí, el hecho de que las conexiones de hoy en día no cierren los puertos y permitan un tráfico más o menos considerable es otro motivo que ha permitido que el blog estuviese arriba durante todo el efecto.
Y eso es todo amigos. Si quieren hospedar sus propias páginas no se olviden de hacerlo bien, pero sobre todo no se olviden de monitorizarlo.
Gracias a Artica S.T. por todo lo que aprendí allí sobre monitorización que, de nuevo, me ha servido para esto y también para tener mi trabajo actual ;)
Uno de cuellos de botella tb es el consumo de cpu, si tienes un backend algo mas pesado, eso y las conexiones tcp totales, si no esta optimizado el kernel, puede no aceptar mas (cuando tiene muchas en pending close) y quedarse cuajado, por eso lo mejor es mirar varias cosas a la vez.
Y si el meneame es una puta caca. Les tengo una mania tremenda :)