Recientemente, varios hermanos de operación y mantenimiento se quejaron a mí, dijo en el sitio de alta defensa CDN efecto de aceleración no es evidente, ya veces incluso más lento que la conexión directa. Subí a echar un vistazo a la configuración en la música - ¿dónde está esta aceleración ah, simplemente en la estación de origen para agregar bloqueo.
El caso de una estación de comercio electrónico es particularmente típico: gastaron mucho dinero para comprar un conocido CDN de alta defensa, pero la interfaz dinámica y recursos estáticos mezclados con el mismo conjunto de estrategias de almacenamiento en caché. Como resultado, cuando los usuarios visitan la página de inicio, las imágenes de los productos se almacenan en caché, pero la información del inventario de precios cada vez que volver a la fuente para obtener, el tiempo de carga de la página es en realidad 4,2 segundos.
De hecho, el problema radica en las reglas de almacenamiento en caché. Muchos equipos piensan que encender la CDN está bien, pero ignoran los escenarios de negocio más críticos para adaptarse. He descubierto que la configuración razonable de la CDN puede hacer que el tiempo de carga de la primera pantalla de 3 segundos + hasta 800 milisegundos, y esto sólo tiene que hacer tres cosas: la separación de movimiento, la estratificación de caché, la computación de borde.
En primer lugar, el funcionamiento básico de la separación estática y dinámica. No te creas todo el bombo y platillo de la ”optimización en un clic”, he visto demasiados sitios lanzar interfaces API y recursos estáticos en la misma política de almacenamiento en caché:
Esta configuración es un desastre para las interfaces dinámicas. Cuando el usuario envía un pedido, ve datos de inventario de hace diez minutos, y es un milagro que no haga un pedido. El enfoque correcto debería ser gestionar esto jerárquicamente en función de las características del negocio:
La segunda capa de optimización es la estrategia de estratificación de la caché. cdn5, el proveedor, ha hecho un trabajo inteligente al permitir establecer estrategias de caché diferenciadas para los nodos de borde y de capa media. Por ejemplo, cuando un usuario realiza una solicitud por primera vez, el nodo de borde obtiene los recursos de la capa intermedia y los almacena en caché durante dos horas, mientras que la capa intermedia los almacena en caché durante 24 horas. Esto no sólo garantiza el efecto de aceleración de los contenidos en caliente, sino que también evita una presión de almacenamiento excesiva en los nodos edge.
Los datos medidos son muy ilustrativos: tras activar el almacenamiento en caché por capas en un sitio web de información, el tráfico de la estación de origen bajó de una media diaria de 3,2 TB a 400 GB, y se respondió a la petición de 95% en el nodo de borde. Hay que prestar especial atención al negocio del vídeo, CDN07 proporciona una función de caché por capas que puede cortar archivos grandes en bloques de 2 MB y almacenarlos en caché por separado, de modo que la experiencia del usuario es mucho más fluida al arrastrar y soltar la barra de progreso.
El Edge Computing es donde realmente se manifiesta la brecha tecnológica.08Host es el que más juega en este aspecto, ya que permite ejecutar lógica personalizada en el nodo CDN. Por ejemplo, podemos identificar el tipo de dispositivo basándonos en el User-Agent, devolver imágenes en formato WebP para móviles y en formato AVIF para ordenadores de sobremesa:
Las estrategias de almacenamiento en caché para la seguridad a menudo se pasan por alto. Algunos equipos almacenan directamente en caché las páginas de error para ahorrar tiempo, lo que provoca que los usuarios vean mensajes de error 500 almacenados en caché. El enfoque correcto es diferenciar los códigos de estado mediante claves de caché:
Hoy en día, incluso las CDN tienen que ”prevenir a los compañeros de equipo”. En una respuesta de emergencia, descubrimos que el atacante solicitaba intencionadamente un gran número de recursos con diferentes parámetros de URL para agotar la capacidad de la caché. Más tarde, añadimos una lista blanca de parámetros a la clave de la caché para conservar sólo los parámetros de consulta necesarios:
El mecanismo de calentamiento es un truco oculto para mejorar la experiencia. Especialmente para escenarios de promoción de comercio electrónico, empujar la página del evento al nodo de borde con antelación puede evitar inundaciones de tráfico.La interfaz API de CDN5 funciona bien, sólo hay que llamarla:
Unas palabras finales sobre el seguimiento de las métricas. Nunca te fijes sólo en la métrica de vanidad de las visitas, me preocupa más laíndice de aciertos de bytes和Ratio de ahorro de caudalUn cliente presumió una vez de una tasa de aciertos de caché de 80%. Un cliente presumió una vez de una tasa de aciertos en caché de 80%, de hecho, como los archivos grandes no se almacenan en caché, el ratio de ahorro de tráfico es de sólo 35%, esta pseudooptimización es realmente lamentable.
Una configuración verdaderamente profesional debe ser como un tratamiento de MTC, adaptado a las características del negocio. El negocio de la información se centra en ciclos de caché largos, las plataformas de comercio electrónico necesitan perfeccionar la caché dinámica, la estación de vídeo optimizar el soporte de solicitudes de rango. Recuerdo que cuando depuré la CDN de una plataforma de retransmisión en directo, ajustando el tamaño de la caché dinámica, pude reducir la tasa de retraso de 1,2% a 0,3%.
Ahora mira hacia atrás en el comienzo del caso de comercio electrónico, que finalmente dio el programa es: almacenamiento en caché de recursos estáticos durante 30 días, la página de detalles del producto de almacenamiento en caché de 5 minutos, la interfaz de precios de almacenamiento en caché de 10 segundos y añadir un mecanismo de compensación suave. Después de la transformación del tiempo de carga de la página hasta 1,1 segundos, los costes trimestrales de ancho de banda para ahorrar más de seiscientos mil.
Lo que pasa con la tecnología es que la gente tiene miedo de lo que piensa. No mires la documentación del proveedor y digas muchas cosas, lo que a ti te convenga es lo mejor. Cada vez que configure las reglas de caché, usaré curl para probar la cabecera de respuesta de diferentes nodos de borde para asegurarme de que los campos Cache-Control y Age cumplen las expectativas. Después de todo, si llevas mucho tiempo en este negocio, sabes que el diablo se esconde en la cabecera de respuesta.

