Blogalia usa un sistema de cachés y solo se hace una sencilla consulta por petición, por lo que era altamente sospechoso que PostgreSQL se quedara sin memoria. Revisando la configuración, PostgreSQL estaba configurado con 250 conexiones máximas y muy pocos buffers compartidos. Además, las conexiones con PHP estaban configuradas como persistentes, de tal forma que por cada instancia de Apache, se creaba una conexión persistente. Esto hacía que paulatinamente, el PostgreSQL se quedara sin memoria para completar las consultas y así los Apaches se quedaban atascados. La cola de peticiones al Apache aumentaban... círculo vicioso.
Así que para solventar el problema, configuré el PostgreSQL para trabajar solo con un máximo de 50 clientes y por el otro desactivé las conexiones persistentes en el php.ini. Tras un par de días de prueba, parece que la carga de la máquina ha vuelto a estar a niveles más que aceptables.
Interesante
(Puntos:1, Informativo)