Estoy tratando de acelerar mi punto de referencia (arquitectura web de 3 niveles) y tengo algunas preguntas generales relacionadas con Memcache (d) y Varnish.
- ¿Cuál es la diferencia? 
 Me parece que Varnish está detrás del servidor web, almacenando páginas web en caché y no requiere cambios en el código, solo configuración.
 Por otro lado, Memcached es un sistema de almacenamiento en caché de propósito general y se usa principalmente para almacenar en caché el resultado de la base de datos y requiere un cambio en el- getmétodo (primera búsqueda de caché).
- ¿Puedo usar ambos? ¿Barniz en el servidor web frontal y Memcached para el almacenamiento en caché de la base de datos? 
- ¿Cuál es una mejor opción? - (escenario 1 - principalmente escritura, 
 escenario 2 - principalmente lectura,
 escenario 3 - lectura y escritura son similares)

Mi experiencia proviene del uso de Varnish con Drupal. En términos tan simples como sea posible, así es como respondería:
En general, Varnish funciona para tráfico no autenticado (a través de cookies) y Memcached almacenará en caché el tráfico autenticado.
Así que usa ambos.
fuente