Home Artículos técnicos Configurar el borde para su negocio en línea
Applications

Configurar el borde para su negocio en línea

About The Author

Outline

Resumen

Edgecast, ahora Edgio, ofrece soluciones de vanguardia para empresas de medios y empresas globales. Construidas sobre nuestra red de vanguardia global líder, las soluciones de entrega, computación, seguridad y streaming de alta calidad de Edgio potencian y protegen algunos de los sitios web, aplicaciones y servicios OTT más grandes del mundo. Entendemos la importancia de la configurabilidad y la flexibilidad para nuestros clientes, por lo que ofrecemos una serie de tecnologías que ponen el control en sus manos. Motor de reglas es solo un ejemplo de esto.

El motor de reglas de Edgio permite personalizar cómo se manejan las solicitudes en nuestra red perimetral. Por defecto, Edgio honra todos los encabezados enviados desde el origen del cliente. Sin embargo, dependiendo del contenido y del caso de uso del cliente, es posible que se requieran reglas personalizadas para anular el comportamiento predeterminado del origen. El motor de reglas y sus API asociadas proporcionan una gran flexibilidad y configurabilidad. Permiten a los clientes controlar sus necesidades de entrega de contenido y seguridad con una precisión sin igual. En este artículo, nos sumergimos en algunos casos de uso comunes e identificamos los beneficios obtenidos de la utilización de varias reglas definidas en el Motor de reglas.

Reglas Características del motor

El motor de reglas incluye muchas características valiosas, cada una de las cuales define el tipo de acción que se aplicará a la solicitud identificada por un conjunto de condiciones de coincidencia. Una condición de coincidencia identifica tipos específicos de solicitudes para las que se realizará un conjunto de características. Veamos primero los tipos de características disponibles para los clientes. Estos personalizan cómo nuestra red de borde gestiona las solicitudes de su contenido.

Acceso: Estas características controlan el acceso al contenido. Por ejemplo, la función Auth de token determina si la autenticación basada en token se aplicará a una solicitud. Esto ayuda a limitar y bloquear el acceso a datos, archivos o páginas solo a aquellos con el permiso adecuado. Esto evita que el contenido o la información se compartan con usuarios no autorizados. Otros controles de acceso incluyen los países/ubicaciones geográficas.

				
					<rule>
   <description>Enable Token Auth</description>
   <match.request.edge-cname.literal hostnames="origin.example-edgecast.com">
      <feature.access.token-auth enabled="true"/>
   </match.request.edge-cname.literal>
</rule>
				
			

Almacenamiento en caché: Estas características personalizan cuándo y cómo se almacena el contenido en caché. Rules Engine ofrece docenas de funciones de almacenamiento en caché para ayudarte a ajustar la forma en que el borde maneja tu contenido. Por ejemplo, el uso compartido parcial de caché (PCS) determina si un archivo parcialmente almacenado en caché puede comenzar a servir como un clic de caché en solicitudes posteriores, o si el archivo necesita almacenarse completamente en caché antes de servirlo desde el borde. Cuando está habilitado, PCS ayuda a reducir la carga de origen y mejora el rendimiento. Esto significa que se realizan menos solicitudes de origen al contenido de origen, lo que puede resultar en una factura de ancho de banda más pequeña en el host / origen. En paralelo, la optimización de la caché puede ayudar a mejorar el rendimiento al servir contenido desde el borde de CDN siempre que sea posible.

				
					<rule>
   <description>Enable Partial Cache Sharing</description>
   <match.request.edge-cname.literal hostnames="origin.example-edgecast.com">
      <feature.caching.partial-cache-sharing enabled="true"/>
   </match.request.edge-cname.literal>
</rule>
				
			

Encabezados: Estas características manipulan los encabezados de solicitud y/o respuesta sobre la marcha. Por ejemplo, el encabezado Modificar solicitud de cliente permite a los usuarios sobrescribir, agregar o eliminar un encabezado de una solicitud. Los usuarios pueden controlar el comportamiento de sus sitios web y aplicaciones personalizando los datos enviados desde el cliente o recibidos desde el servidor.

				
					<rule>
    <description>Add CORS Header</description>
    <match.request.edge-cname.literal hostnames="origin.example-edgecast.com">
        <feature.headers.modify-client-response-header action="set" name="access-control-allow-origin" value="*"/>
    </match.request.edge-cname.literal>
</rule>
				
			

Registros: Entre el conjunto de análisis basados en UI, los registros sin procesar, en tiempo real y personalizados se pueden generar para una vista en profundidad (o 360 grados) de la huella de tráfico de CDN y seguridad. Estas características personalizan los datos almacenados en archivos de registro sin procesar. Por ejemplo, la subred de cliente de máscara determina si la dirección IP de un cliente se enmascarará para fines de registro e informes. Esto ayuda con el cumplimiento del Reglamento General de Protección de Datos (RGPD). Utilizamos la entrega de registros en tiempo real para dar soporte a Plus500, una firma global de fintech, lo que les permite realizar lanzamientos de software más rápidos y seguros.

Origen: Estas características controlan cómo la CDN se comunica con un servidor de origen. Por ejemplo, Maximum Keep-Alive requests define el número máximo de solicitudes para una conexión Keep-Alive antes de cerrarla. Esto ayuda a mejorar el rendimiento al minimizar el número de pasos de autenticación TCP necesarios para las solicitudes.

Especialidad: Estas características proporcionan una funcionalidad avanzada de cómo se comporta la CDN con el origen o el cliente. Por ejemplo, al cambiar la regla QUIC, puede dictar si el cliente está informado de que nuestro servicio CDN admite QUIC. Al hacerlo, Edgio puede servir páginas web optimizadas para rendir al máximo.

				
					<rule>
    <description>Enable QUIC</description>
    <match.request.edge-cname.literal hostnames="origin.example-edgecast.com">
        <feature.specialty.quic enabled="true"/>
    </match.request.edge-cname.literal>
</rule>
				
			

Variable de usuario: Asigna un valor a una variable definida por el usuario que se pasa a su solución de procesamiento de tráfico personalizada. Esto se utiliza a menudo con nuestro lenguaje de scripting back-end personalizado (LUA). Un beneficio es que permite al usuario inyectar variables definidas por el usuario en una configuración estática para controlar el back-end para el equilibrio de carga del servidor.

Reglas Resumen de características/beneficios del motor.

Casos de uso

Redirigir HTTP a HTTPS: Si no estás forzando el tráfico de tu sitio web o aplicación a través de TLS, los visitantes verán la temida advertencia de seguridad emergente en sus navegadores. Los visitantes del sitio web saben que los sitios inseguros son vulnerables a ataques que pueden robar su información. Un sitio seguro infunde confianza. Permite a los visitantes saber que estás haciendo tu parte para proteger sus datos personales. HTTPS es clave para garantizar la seguridad y la accesibilidad, y el redireccionamiento de HTTP a HTTPS se logra fácilmente con Rules Engine. Edgio también ofrece un Secure Socket Layer (SSL) totalmente administrado y un SSL Traiga su propio certificado (BYOC) a través de la integración de la bóveda de claves para SSL.

Comprensión de la geografía de los visitantes y el tipo de dispositivo: Las empresas pueden obtener una gran cantidad de inteligencia al comprender de dónde provienen los visitantes de sus propiedades web y qué tipo de dispositivo se utiliza. Con el motor de reglas, se pueden agregar campos de registro personalizados para proporcionar información sobre la geolocalización de la solicitud y el tipo de dispositivo utilizado. Las variables HTTP hacen esto fácil y permiten que estas métricas se añadan a los registros sin procesar. Esto crea un registro más completo, informes internos, monitoreo, información y solución de problemas.

Además, la función de redireccionamiento de URL permite a las empresas redirigir las solicitudes a diferentes URL en función de la región geográfica del usuario final. Esto es particularmente útil para las empresas multinacionales que mantienen diferentes versiones específicas de sus sitios web (por ejemplo, diferentes idiomas y temas).

				
					<rule>
   <description>Language Redirect</description>
   <select.first-match>
       <match.location.country.literal result="match" codes="US">
           <feature.url.url-redirect source="/80666BA/Origin1/(.*)" destination="%{scheme}://www.example-edgecat.com/us/$1" code="301"/>
       </match.location.country.literal>
       <match.location.country.literal result="match" codes="DE">
           <feature.url.url-redirect source="/80666BA/Origin1/(.*)" destination="%{scheme}://www.example-edgecat.com/de/$1" code="301"/>
       </match.location.country.literal>
   </select.first-match>
</rule>
				
			

Otro caso de uso geográfico se refiere a las descargas de firmware. A menudo, un cliente distribuido globalmente tiene una única URL para una descarga de firmware. Pero estos necesitan que las solicitudes sean extraídas del servidor regional más cercano para una mejor experiencia de usuario final y para garantizar que los servidores no se sobrecarguen con demasiadas solicitudes. Con el motor de reglas, se puede aplicar una reescritura de URL para que las solicitudes se redirijan a un servidor regional en función de la geolocalización que inicia la solicitud.

				
					<rule>
    <description>Rewrite for Regional Origin Servers</description>
    <select.first-match>
        <match.location.country.literal result="match" codes="US">
            <feature.url.url-rewrite source="/80666BA/Origin1/(.*)" destination="/80666BA/Origin-US/$1"/>
        </match.location.country.literal>
        <match.location.country.literal result="match" codes="DE">
            <feature.url.url-rewrite source="/80666BA/Origin1/(.*)" destination="/80666BA/Origin-DE/(.*)"/>
        </match.location.country.literal>
    </select.first-match>
</rule>
				
			

Denegar el acceso al contenido: Hay muchas razones por las que las empresas en línea necesitan denegar o bloquear el acceso a su contenido. El geobloqueo restringe el acceso al contenido en función de la ubicación del usuario final. Esto puede ser necesario para que una empresa cumpla con las sanciones económicas y las leyes de privacidad o para detener las amenazas a la seguridad. Las reglas de geobloqueo se pueden configurar en el Motor de reglas para denegar o permitir el acceso al contenido utilizando una variedad de condiciones de coincidencia de ubicación, incluidos los códigos de región y país.

				
					<rule>
    <description>Deny RU Access</description>
    <match.location.country.literal result="match" codes="RU">
        <feature.access.deny-access enabled="true"/>
    </match.location.country.literal>
</rule>
				
			

Los clientes también pueden denegar el acceso al contenido mediante la autenticación basada en tokens. Esto implica negar o permitir el acceso al contenido en función de numerosas características de la solicitud entrante, como la geolocalización precisa, la ruta de URL, los valores de varios encabezados y / o cookies, nombres de archivos, direcciones IP y más. El geobloqueo se utiliza en servicios de transmisión como Netflix y Hulu para cumplir con las leyes de licencia del contenido que entregan a través de Internet.

Control de caché: El motor de reglas permite a los clientes ajustar la forma en que se almacena su contenido en caché en nuestros servidores perimetrales. Hay docenas de reglas de almacenamiento en caché que se pueden aplicar dependiendo de su contenido y requisitos de entrega. Aquí hay algunos ejemplos de casos de uso:

  • La CDN, por defecto, seguirá las directivas de almacenamiento en caché establecidas por el origen. Sin embargo, si el origen solicita omitir la caché, el cliente puede ignorar fácilmente esta directiva para tener el activo en caché para su entrega. Esto permite un control de caché simplificado usando el motor de reglas y evita que el cliente tenga que hacer cambios de origen.
  • La regla de edad máxima externa permite el control del navegador para la revalidación de la caché del servidor de borde. En otras palabras, los clientes pueden especificar la cantidad de tiempo que debe pasar antes de que un navegador verifique una nueva versión de un activo desde un servidor de borde.
  • La regla STAND WATE REVALIDATE mejora el rendimiento al permitir que nuestros servidores perimetrales sirvan contenido obsoleto al solicitante mientras se produce la revalidación. El cliente tiene un control total sobre el tiempo transcurrido desde el vencimiento del tiempo de vida (TTL) durante el cual la CDN puede entregar contenido obsoleto. Una versión de esto es la regla Entrega de contenido obsoleto en error. Esto se puede utilizar para servir contenido almacenado en caché caducado cuando se produce un error, ya sea durante la revalidación de la caché o al recuperar el contenido solicitado desde el servidor de origen. Los clientes pueden preferir esto en lugar de reenviar un error al usuario final en algunos casos.
  • El almacenamiento en caché negativo también se puede configurar a través del motor de reglas para almacenar brevemente en caché errores específicos con el fin de proteger el origen de una oleada de solicitudes que generan errores. Hemos visto que esta configuración alivia la presión del origen cuando las solicitudes no se pueden cumplir. Esta es una gran característica que los usuarios pueden configurar para reducir los picos de origen en las solicitudes 4xx o 5xx.
  • La función de optimización de transmisión en el motor de reglas es perfecta para ajustar la configuración de almacenamiento en caché para optimizar el rendimiento de las transmisiones en vivo y reducir la carga en el servidor de origen.

Configuraciones tan únicas como sus necesidades

Sabemos que no hay dos clientes iguales, e incluso dos empresas de la misma industria tendrán diferentes requisitos de contenido. El motor de reglas le da un control completo sobre cómo la red está configurada para manejar su contenido. Trabajamos con empresas pequeñas y grandes y podemos asegurarnos de que nuestra red esté afinada para cumplir con la entrega experta de su contenido.

Póngase en contacto con nosotros para obtener más información sobre cómo Rules Engine puede apoyar sus necesidades de contenido y entrega.