1stdibs es la tienda online número uno de artículos de lujo y difíciles de encontrar. En este sitio de comercio electrónico se reúnen más de 2000 comerciantes especializados en diseño, arte y coleccionismo, así que es el destino perfecto para comprar objetos únicos en su especie en cualquier momento y desde cualquier lugar. En 2014, 1stdibs movió mercancía por valor de 1100 millones de dólares, un 20 % más con respecto al año anterior.
1stdibs.com
Sector: Retail online
Ubicación: Nueva York (EE. UU.)
Cliente desde: 2014
Funcionalidades favoritas
VCL personalizado
Compatibilidad con la función caducado-mientras-actualiza
Compatibilidad con la función caducado-en-caso-de-error
Envío de registros en tiempo real
Poner un sitio rápido y fiable al alcance de clientes de todo el mundo es fundamental para 1stdibs, motivo que llevó a la empresa a decantarse por Fastly. Hasta entonces, había utilizado distintas soluciones para la distribución de contenidos, pero se dio cuenta de que las CDN tradicionales no podían plantar cara a las amenazas modernas. 1stdibs necesitaba una CDN que pudiera adaptarse a los rápidos cambios de internet y que proporcionara seguridad avanzada para mitigar futuros ataques sin renunciar a un control pormenorizado.
«La tecnología de Fastly nos permite actuar ante las amenazas de una forma más efectiva que cualquier otra solución y pone todo el control en nuestras manos. Con la CDN de Fastly, podemos prestar un servicio ininterrumpido aunque se produzca un ataque».
1stdibs se pasó a Fastly después de un ataque de DDoS que provocó una breve interrupción de su sitio. A pesar de conocer las direcciones IP maliciosas, la CDN que tenía por aquel entonces tardó más de dos horas en bloquearlas. Gracias a Fastly, 1stdibs puede trasladar al edge la lógica que normalmente se ejecuta en el origen, lo que le permite bloquear los ataques de bajo nivel en las capas 3 y 4, así como defenderse de los ataques complejos en la capa 7 o capa de la aplicación. Esto incluye el análisis de la petición HTTP completa (encabezados, cookies y ruta) y la inserción de filtros en la capa del edge o del almacenamiento en caché, mucho más ampliables, con lo que se logra proteger el origen.
Como los atacantes suelen cambiar de táctica mientras hacen de las suyas, las soluciones de protección contra DDoS deben permitir que los sitios se adapten rápidamente a cada nueva estrategia. Ahí entran en juego Varnish, un acelerador web de última generación diseñado para contenido dinámico (como sitios web, API y aplicaciones móviles), y Varnish Configuration Language o VCL, su lenguaje de configuración. 1stdibs puede actualizar VCL para bloquear nuevos métodos de ataque y desplegar las actualizaciones a través de la red de Fastly en cuestión de segundos.
Antes de cambiarse a Fastly, 1stdibs ya usaba Varnish. Fastly se basa en Varnish, por lo que 1stdibs puede adaptar completamente su servicio de CDN escribiendo y desplegando al instante VCL personalizado mediante la interfaz o la API de Fastly. 1stdibs utiliza configuraciones a medida para dirigir el tráfico de modo que se conecte a través de la seguridad de la capa de transporte (TLS) en el edge en lugar del origen, lo cual mejora el rendimiento para los usuarios finales y reduce el número de peticiones enviadas al origen.
«Lo que diferencia realmente a la CDN de Fastly es que no se trata de una caja negra que no podamos controlar. Fastly forma parte de nuestra infraestructura: es como si creáramos centros de datos en todo el mundo para convertirlos en nodos de Varnish. El VCL personalizado de Fastly no solo nos permite aprovechar la potencia y la tecnología de Varnish, sino que también nos da una flexibilidad y un nivel de control inauditos».
Con el VCL personalizado, 1stdibs puede ajustar los encabezados de caché en función de si el servidor de la CDN es un nodo en el edge o actúa como protección del origen. En el primer caso, Fastly puede extraer el encabezado s-maxage antes de que el contenido se distribuya al usuario, así ningún otro proxy de red puede interferir con las decisiones relativas al contenido.
«La mayor parte de nuestro contenido se almacena en caché durante mucho tiempo. Sin embargo, cuando se produce algún cambio, necesitamos que la nueva información se distribuya rápidamente. Por eso establecimos una directiva s-maxage con una duración máxima de un mes para Fastly y una directiva max-age con una duración máxima de un minuto para el navegador. Cuando hay nuevo contenido disponible, utilizamos Instant Purge de Fastly para borrar la caché de mayor antigüedad».
1stdibs puede acceder rápidamente a la asistencia de Fastly a través de IRC para obtener orientación e información en tiempo real durante eventos clave. Cuando 1stdibs optó por redireccionar la mayoría de su sitio a HTTPS, probó y realizó cambios en su VCL de manera local con la intención de desplegarlos en vivo en la nube. Durante el proceso, el canal IRC de Fastly dio al equipo de 1stdibs pautas para probar y modificar los cambios de configuración.
«Aunque no hemos tenido tantos problemas como para acudir al soporte de Fastly, su equipo ha estado muy pendiente. El canal IRC es genial: cuando decidimos hacer cambios, la persona responsable de las operaciones se conectó al canal y el equipo de Fastly respondió enseguida».
1stdibs utiliza los registros enviados por Fastly para supervisar el rendimiento del sitio y solucionar los problemas al vuelo. A diferencia de las CDN tradicionales, que hacen envíos en lotes, Fastly manda los registros en tiempo real a casi cualquier punto de conexión de registro importante, lo que incluye proveedores de registros como servicio, buckets de S3 y herramientas de análisis. Así 1stdibs puede identificar y resolver los problemas a medida que surgen.
«Muchas veces consultamos los registros de Fastly antes que los del origen. Una vez sacamos una nueva versión y se produjo un caso extremo que desencadenó un montón de errores en el servicio. Miramos el panel de Fastly en la oficina y nos dimos cuenta de que el patrón de los errores había cambiado por completo. Gracias a los registros de Fastly, podemos identificar los errores y solucionarlos rápidamente».
Al ser una tienda online de artículos de lujo, 1stdibs necesitaba una manera de ofrecer una experiencia escalable y personalizada en función de la ubicación de los visitantes. La empresa almacena todo el contenido posible en caché y gestiona el contenido dinámico mediante AJAX. Hace poco, 1stdibs añadió a su sitio una funcionalidad para adaptar las divisas, un tipo de contenido muy impredecible. Además, quería aprovechar las ventajas en cuanto a rendimiento e infraestructura del almacenamiento en caché y, al mismo tiempo, mantener la capacidad de cambiar de inmediato el contenido en caso necesario.
«Almacenamos en caché todas las páginas con los datos de los productos, incluso cuando alguien quiere ver un artículo con su precio en una divisa concreta. Como los tipos de cambio son variables, una vez que se le muestra la página almacenada en caché, se envía una petición de AJAX al origen que obtiene el precio actual y lo actualiza de forma dinámica. Disfrutamos de todas las ventajas que nos aporta la velocidad del almacenamiento en caché sin mostrar información obsoleta en ningún caso».
Con el almacenamiento en caché y el enrutamiento de www.1stdibs.com a través de Fastly, además de Origin Shield de Fastly, 1stdibs se asegura de que los picos en las peticiones no afecten al rendimiento para los usuarios finales. Esto le permite seguir creciendo sin aumentar la capacidad del origen.
«En una ocasión, un rastreador se volvió loco y multiplicó por diez el tráfico del sitio. No observamos ningún efecto negativo en nuestro origen porque Fastly bloqueó las peticiones erróneas y ese tráfico nunca nos llegó. Y lo más importante es que nuestros clientes ni se enteraron. No tenemos ninguna duda de que Fastly nos ofrecerá la escalabilidad que necesitamos a medida que crezca el negocio».
«Fastly ha cambiado nuestra forma de entender la infraestructura. Actúa como una extensión del stack de 1stdibs y nos permite hacer cambios en la configuración y enviar registros de forma instantánea, algo impensable con otros proveedores de CDN».
Ross Paul
CTO