LAMP es la pila de aplicaciones, pero no es necesario que todas estén instaladas en el mismo host. Como otros han señalado por motivos de rendimiento, seguridad o escalabilidad, a menudo no se instalan en el mismo host. También puede encontrar que el hardware que es óptimo para una parte de la arquitectura puede no serlo para otra.
Por ejemplo, las bases de datos tienen que ver con la gestión del almacenamiento. Cuanto más rápido pueda obtener información del disco, más rápido puedo llevarla al solicitante. Si estoy compartiendo un subsistema de disco con varios otros miembros de la pila de aplicaciones, como un servidor web, la contención que enfrento sobre el recurso compartido de las unidades de lectura y escritura de las unidades de disco puede en realidad obstaculizar mi rendimiento. Además, dividir la RAM entre el servidor web y el servidor de la base de datos en un host determinado puede no proporcionar un grupo de recursos lo suficientemente grande como para que se ejecute de la manera más eficiente, capaz de almacenar en caché tanta información en la RAM sin tener que ir al disco. una imagen, una página o un conjunto de resultados de consulta.
Administrativamente, también se pueden obtener eficiencias. Imagínese si ejecuta su empresa en aplicaciones de código abierto que aprovechan MySQL como un back-end común. ¿Realmente querría tener una proliferación de servidores de bases de datos con cada aplicación? Esto podría ser una pesadilla de DBA, "OK, ¿qué aplicación usa este DB?" Tendría múltiples versiones, múltiples configuraciones de hardware / software, múltiples estrategias de retención de datos. También es probable que tenga habilidades administrativas muy difusas. En su lugar, combine las instancias en una pieza física de hardware optimizada para el rol y asigne recursos dedicados para administrar el servidor y sus datos.