Varnish
Varnish es un proxy que coloca entre el usuario y el (o los) servidor(es) web, siendo Varnish quien accesa el servidor web, manteniendo cache del contenido y manipulando los headers y tal vez también el contenido.
Varnish redirecciona el request ya sea hacia el cache interno, hacia un servidor web u otro servidor web.
Drupal y CDN
Dentro de un esquema parecido en cuanto al tipo de resultados esta el usar un CDN (Content Delivery Network) que consiste en colocar los archivos estaticos en un servidor o servicio que se dedica especificamente a proveer archivos y relegar al servidor web de estos requests, liberando probablemente más de un 80% de los requests que recibe el servidor web.
Drupal tiene un cache que por defecto se guarda en la base de datos.
Este cache funciona en modo de llave/valor y en el se guarda aquello que el core o cada modulo considera que debe ser cacheado en vez de evaluarse en cada llamada.
Siempre hay una desición en cuanto a cuanto soporte dar hacia versiones anteriores o a los requisitos de un sistema o plataforma.
El servidor tiene recursos limitados y por tanto una cantidad limitada de solicitudes que puede atender simultáneamente.
A grandes razgos hay varias formas de optimizar Drupal y lo recomendable es utilizar varias de estas para un resultado óptimo, pero no solo se trata de optimizar por optimizar, sino encontrar cuales optimizaciones son las que lograrian mayor beneficio para cada caso, por eso mi intencion tambien es discutir en cuales situaciones se debe utilizar cada metodo.
Es posible sacar más provecho al espacio y los datos en la base de datos y el codigo, y es de hecho muy importante, para algunos enfoques se puede utilizar datos a nivel de bits de manera eficiente, tanto en el codigo PHP, MySQL y en Drupal.
Antes de mejorar algo o sacarle más provecho es importante entenderlo, para esto vamos a hacer un repaso de algebra booleana.
Recientemente compré el iPod Touch de 4ta generación (también aplica al iPad y al iPhone) e intenté usar videos que habia tomado previamente en mi camara, pero el iMovie app no me muestra estos videos para utilizarlos, solo me muestra los que se tomaron con el mismo iPod Touch, aquí les enseñaré como lograr usar otros videos en el iMovie app.
En .Net framework 4 (Visual Studio 2010) ahora hay una funcionalidad que permite tener diferentes configuraciones del web.config para cada ambiente de desarrollo, pruebas y/o producción. Una solución para un problema de siempre.
Considero que se debe ser muy cuidadoso y detallado a la hora de definir las bases de datos en un proyecto, es ahi uno de los puntos que garantizaran el éxito o el fracaso en términos de eficiencia.
Drupal 6 y posterior tiene una conveniente manera de definir las tablas sin usar la sintaxis de un servidor de base de datos especifico, pero esto a veces viene con un sacrificio en la flexibilidad de lo que se puede hacer, como por ejemplo definir el tamaño de un indice de texto, así que a continuación explico como lograr esto.


