Implementa una caché multinivel y reduce costos para tu e-commerce

Mejora el desempeño de tu comercio electrónico y reduce costos implementando una estrategia de almacenamiento en caché multinivel.

Mariana Bellorín Aguilera - Technical Writer
Implementa una caché multinivel y reduce costos para tu e-commerce

El comercio electrónico ha sido uno de los sectores de más rápido crecimiento en los últimos años, pero con una gran presencia y demanda vienen desafíos significativos. Gestionar vastos catálogos de productos y atender miles de usuarios diariamente requiere un servicio fluido y altamente disponible que brinde la mejor experiencia de usuario posible. Las demoras, los tiempos de inactividad durante picos de tráfico y la incapacidad de analizar datos en tiempo real pueden causar grandes dolores de cabeza y a menudo parecen requerir costosas mejoras de infraestructura.

Sin embargo, puedes mejorar el desempeño de tu comercio electrónico y reducir costos sin arruinar tu presupuesto con la implementación de una estrategia de caché multinivel. Este enfoque mejora la disponibilidad, la experiencia del usuario y la eficiencia operativa.

Cómo funciona la caché multinivel

La caché almacena temporalmente datos frecuentemente accedidos o solicitados recientemente para recuperarlos más rápido. Cuando un usuario solicita datos, la aplicación primero verifica la caché. Si los datos están en caché (un cache hit), la respuesta se envía directamente al usuario. Si no (un cache miss), la aplicación obtiene los datos del servidor de origen, los almacena en la caché para futuras solicitudes y luego los envía al usuario.

La caché multinivel lleva esto un paso más allá al utilizar múltiples capas de caché entre los servidores de edge y de origen. Si los datos no se encuentran en una capa de caché inferior, la aplicación verifica las capas superiores antes de ir al origen. Esto reduce la latencia y los costos de infraestructura al minimizar las llamadas al origen.

La edge computing maximiza los beneficios de la caché al distribuir nodos de caché más cerca de los usuarios para respuestas aún más rápidas y un uso de recursos más eficiente. Así es como funciona una solución de caché en el edge de dos capas, usando Edge Cache y Tiered Cache de Azion:

1. El usuario envía una solicitud a la Plataforma de Edge de Azion.

2. La edge application recibe la solicitud y aplica reglas/políticas.

3. Se verifica la primera capa de caché localmente.

4. Si los datos no se encuentran en la primera capa, se verifica Tiered Cache regional como una capa secundaria.

5. Si los datos no se encuentran en ninguna capa de caché, la solicitud se envía al origen.

6. El origen responde a Tiered Cache.

7. Tiered Cache almacena contenido y envía la respuesta al edge node.

8. El edge node almacena contenido y envía la respuesta al usuario.

Implementación de caché multinivel con Azion

Implementar la caché multinivel es sencillo utilizando Edge Cache y Tiered Cache de Azion. Aquí tienes un ejemplo de configuración a través de Azion CLI:

# Crea una nueva edge application
$ azion create edge-application --name "ecommerce-caching"
# Agrega un dominio personalizado
$ azion create domain --application-id 1234 --name "domainName"
// Para más detalles sobre la configuración de dominio y otras flags, consulta esta documentación: https://www.azion.com/en/documentation/devtools/cli/create/#domains
# Habilita el add-on tiered cache
$ azion update edge-application --application-id 1234 --l2-caching true
## También puedes habilitar la funcionalidad de Large File Optimization para Tiered Cache usando la flag --slice-l2-caching-enabled.
# Crea un origen
$ azion create origin --application-id 1234 --name "origin-edge" --origin-type single_origin --addresses "azion.com.br" --host-header "azion.com.br"
# Configura las edge cache settings
$ azion create cache-setting --application-id 1234 --name "edge-cache" --browser-cache-settings "override" --browser-cache-settings-maximum-ttl 604800 --cdn-cache-settings "override" --cnd-cache-settings-maximum-ttl 604800
# Configura las tiered cache settings
$ azion create cache-setting --application-id 1234 --name "tiered-cache" --browser-cache-settings "override" --browser-cache-settings-maximum-ttl 15778800 --cdn-cache-settings "override" --cnd-cache-settings-maximum-ttl 15778800 --l2-caching-enabled true
// Para más detalles sobre la configuración de cache setting y otras flags, consulta esta documentación: https://www.azion.com/en/documentation/devtools/cli/update/#cache-settings
# Crea una regla de Rules Engine para Edge Cache
$ azion create rules-engine --application-id 1234 --phase "request" --file `./edge-cache-rule.json`
En el archivo edge-cache-rule.json, incluye:
{
"name": "edge-cache-rule",
"description": "This is a description for your edge cache rule",
"criteria": [
[
{
"conditional": "if",
"variable": "${uri}",
"operator": "matches",
"input_value": "/black-friday/"
}
]
],
"behaviors": [
{
"name": "set_cache_policy",
"target": "edge-cache"
}
]
}
# Crea una regla de Rules Engine para Tiered Cache
$ azion create rules-engine --application-id 1234 --phase "request" --file `./tiered-cache-rule.json`
En el archivo tiered-cache-rule.json, incluye:
{
"name": "tiered-cache-rule",
"description": "This is a description for your tiered cache rule",
"criteria": [
[
{
"conditional": "if",
"variable": "${uri}",
"operator": "matches",
"input_value": ".(webp|avi|video_formats)."
}
]
],
"behaviors": [
{
"name": "set_cache_policy",
"target": "tiered-cache"
}
]
}
// Para más detalles sobre la configuración de reglas y otras flags, consulta esta documentación: https://www.azion.com/en/documentation/devtools/cli/update/#rules-engine

Esta configuración almacena en caché el contenido de /black-friday, * * como catálogos de productos, en la capa de Edge Cache con un TTL de 7 días, y el contenido más estático de /videos en la capa de Tiered Cache con un TTL de 6 meses. Cuando la caché en Edge Cache expira, el contenido permanece en Tiered Cache para minimizar las solicitudes al servidor de origen.

Beneficios para el comercio electrónico

El almacenamiento en caché multinivel ofrece varios beneficios clave para las plataformas de comercio electrónico:

  • Costos reducidos: minimiza la carga del servidor de origen y el uso de recursos, ahorrando en infraestructura, ancho de banda y alojamiento.
  • Mejora del desempeño: entrega contenido más rápido al almacenar en diferentes capas, lo que mejora la velocidad del sitio web y la experiencia del usuario.
  • Escalabilidad: maneja picos de tráfico y cargas aumentadas de manera más eficiente sin sacrificar el desempeño.
  • Confiabilidad: reduce el tiempo de inactividad y los problemas de desempeño causados por la sobrecarga del servidor de origen.

En resultados del mundo real, las plataformas de comercio electrónico que utilizan edge computing junto con el almacenamiento en caché multinivel han logrado:

Conclusión

El almacenamiento en caché multinivel es una táctica de optimización poderosa para las plataformas de comercio electrónico que buscan agilizar operaciones, mejorar la eficiencia y ofrecer experiencias de usuario sin fricciones, al mismo tiempo que ahorran en costos de infraestructura. Al almacenar en caché y distribuir contenido en el edge usando múltiples capas, las aplicaciones pueden acelerar la entrega de contenido y minimizar la carga en los servidores de origen.

En el exigente panorama digital actual, esos milisegundos ahorrados pueden marcar toda la diferencia entre una excelente experiencia de usuario y una decepcionante. Implementar una estrategia de almacenamiento en caché multinivel sólida es una inversión inteligente en el desempeño, la escalabilidad y el resultado final de su plataforma de comercio electrónico.

 

Suscríbete a nuestro boletín informativo