Descripción general de CDN, seguridad y rendimiento

Last updated:

El CMS de HubSpot es uno de los sistemas de gestión de contenido más avanzados y optimizados del mercado. Dado que el CMS de HubSpot es una solución de Software como servicio (SaaS), manejamos seguridad, confiabilidad, mantenimiento y más, para que tu equipo pueda concentrarse en escribir código y crear experiencias de usuario atractivas. 

HubSpot hace numerosas mejoras de rendimiento para ti, pero todavía hay más que puedes hacer. Cómo optimizar el rendimiento en el CMS de HubSpot.

Red de distribución de contenido (CDN)

La red de distribución de contenido distribuida globalmente del CMS de HubSpot garantizará tiempos de carga de página ultrarrápidos independientemente de dónde se encuentren tus visitantes. No se requiere configuración o cuentas adicionales para aprovechar la CDN para alojar elementos multimedia o páginas. El sistema se encarga de la distribución y la invalidación de la caché para que puedas concentrarte en la creación de un gran sitio, mientras que un firewall de aplicaciones web y las medidas de seguridad integradas proporcionan tranquilidad contra los ataques en línea.

Capa de puertos seguros (SSL)

SSL se incluye y aprovisiona automáticamente de forma gratuita en todos los dominios conectados en las cuentas de HubSpot CMS o Marketing Hub. Cada dominio cuenta con su propio certificado SAN, con opciones configurables, como desactivar el soporte para versiones seleccionadas de TLS, redirigir las solicitudes realizadas a través de HTTP a HTTPS y servir el encabezado HSTS para que futuras solicitudes se realicen a través de https. Por solicitud, los certificados SSL personalizados se pueden alojar por una tarifa mensual adicional.

HTTP/2

Todo el tráfico SSL de sitios web alojados en HubSpot se distribuye usando HTTP/2. HTTP/2 reemplaza la manera de expresarse del HTTP “en el cable”. No es una reescritura desde cero del protocolo; los métodos HTTP, los códigos de estado y la semántica son los mismos, y debería ser posible usar las mismas API que HTTP/1.x (posiblemente con algunas pequeñas adiciones) para representar el protocolo.

El protocolo se centra en el rendimiento, particularmente en la latencia percibida por el usuario final y el uso de recursos del servidor y la red. Un objetivo principal es permitir el uso de una sola conexión de los navegadores a un sitio web.

IPv6

Todos los sitios web alojados en HubSpot incluyen direcciones IPv6 para que se pueda acceder a ellos de forma nativa a través de IPv6. IPv6 es la versión más reciente del Protocolo de Internet y amplía el número de direcciones disponibles a una cantidad prácticamente ilimitada: 340 billones de billones de billones de direcciones. Internet se está quedando sin direcciones IPv4. La transición a IPv6 permite que Internet siga creciendo y permite que se desarrollen servicios nuevos e innovadores porque más dispositivos pueden conectarse a Internet.

Javascript y la minimización de CSS

Al escribir páginas de JavaScript y CSS para HubSpot, puedes esperar el siguiente comportamiento de minimización:

Nota: dado que HubSpot minimiza automáticamente JavaScript y CSS en el administrador de diseño, no debes agregar código minimizado directamente al administrador de diseño.

Para incluir código minimizado, debes cargar el archivo en el administrador de archivos y luego adjuntar el archivo a través del administrador de diseño. Para vincular un archivo minimizado a un módulo localmente, puedes actualizar el meta.json del módulo para incluir css_assets o js_assets.

  • HubSpot no minimiza los archivos JavaScript o CSS que se cargan en el administrador de archivos o a los que se hace referencia a través de enlaces externos. Debes asegurarte de que estos archivos estén minimizados antes de cargarlos.
  • Cada vez que actualices un archivo JavaScript o CSS en el administrador de diseño o a través de la carga local, HubSpot lo volverá a minimizar automáticamente. Esto puede provocar un breve retraso antes de que veas la versión .min.js de tu archivo que se está publicando en páginas en vivo. Durante ese período, HubSpot ofrecerá la versión sin minimizar para garantizar que los visitantes del sitio sigan recibiendo la última versión de tus archivos. 
  • Los errores de sintaxis pueden impedir que HubSpot pueda minimizar un archivo.
Además de la minimización, puedes usar HubL includes para combinar múltiples archivos CSS en un solo archivo para aumentar aún más el rendimiento.

Almacenamiento en caché del navegador y del servidor

HubSpot almacena automáticamente en caché las páginas y los archivos tanto a nivel de servidor como de navegador para garantizar la entrega más rápida de todos los activos de página a los visitantes de tu sitio web. Cuando tu página o cualquier dependencia de tu página (como una plantilla o módulo) cambia, caducamos automáticamente las cachés de servidor para esa página.

Reescritura de dominios

Cada dominio adicional utilizado en tu sitio web incurre en una búsqueda y conexión DNS adicional. Cuantos menos dominios uses, más rápido se cargará tu sitio web. HTTP/2 admite la carga de varios archivos simultáneamente en la misma conexión, por lo que ya no se aplican las antiguas pautas para "fragmentar" tus activos entre múltiples dominios.

Las URL de los activos a los que se hace referencia en las páginas de CMS, como los archivos del sistema de archivos del desarrollador, CSS, JS e imágenes, se vuelven a escribir automáticamente para que coincidan con el dominio de la página actual cuando sea posible. Por lo tanto, si haces referencia a una imagen en http://cdn2.hubspot.net/hubfs/53/HubSpot_Logos/HSLogo_gray.svg en una página publicada en www.hubspot.com, la URL se actualizará automáticamente a https://www.hubspot.com/hubfs/HubSpot_Logos/HSLogo_gray.svg.

Compresión de texto

Los archivos basados en texto como HTML, CSS y JS se comprimen usando brotli antes de que se sirvan a los navegadores. La compresión con brotli es aún más significativa que GZIP. Si el cliente no indica que se admite la compresión de Brotli, se aplicará la compresión de gzip.

Si bien la minimización acelera el tiempo de análisis de los archivos CSS y JS en el navegador, la compresión lleva esos archivos al navegador más rápido.

Compresión/optimización de imágenes y redimensionamiento automático de imágenes

Cuando cargas una imagen al administrador de archivos, las imágenes se optimizan automáticamente. Específicamente, los JPEG y los PNG son despojados de sus metadatos (EXIF y otras cosas que hacen que las imágenes sean más grandes). Todas las imágenes (excepto los archivos GIF) también se vuelven a comprimir para que no tengan pérdidas visuales. Además, podemos servir imágenes en una codificación diferente si se puede representar como un PNG más pequeño que un JPEG.

Las imágenes se vuelven a guardar a 72dpi independientemente de su resolución original. Si subes un archivo a 300dpi, creado originalmente para imprimir, se convertirá a 72dpi, que es el estándar para la web.

Progresivamente mejoramos las imágenes para usar el formato WebP para los navegadores que lo admiten. Las imágenes se mostrarán en formato WebP si el tamaño del archivo de esa versión de la imagen es menor. Esta conversión se realiza del lado del servidor y no cambia la extensión del archivo en la URL. Una imagen cargada como un .jpg, todavía se mostrará como un .jpg en la URL, pero se servirá como una WebP. Esto garantiza que los enlaces a esta imagen funcionen para todos, independientemente de la compatibilidad con WebP.

Las imágenes alojadas en HubSpot colocadas en el contenido de CMS serán redimensionadas automáticamente por HubSpot, evitando que el navegador gaste recursos para hacerlo. Para lograr esto, HubSpot agrega parámetros de consulta de altura y/o ancho a la URL src de cualquier imagen que tenga un atributo de ancho o altura. Nota: el cambio de tamaño de la imagen tarda menos de un minuto, si se solicita una página antes de cambiar el tamaño de la imagen, la imagen no redimensionada se mostrará para esa solicitud. Los navegadores tienen varias opciones para que la resolución de la imagen se cargue, por lo que tus imágenes se verán nítidas en pantallas estándar y de alta resolución.

La optimización/compresión de imágenes y el redimensionamiento automático de imágenes están habilitados por opción predeterminada para todas las páginas y todos los archivos alojados en HubSpot.

Captura de pantalla del elemento img con srcset agregado automáticamente con diferentes URL de tamaño

Para archivos jpg individuales si la url de la imagen tiene el parámetro de consulta quality=high, la imagen no se comprimirá.

Los desarrolladores que se basan en el CMS de HubSpot también pueden proporcionarle contexto adicional a las imágenes para controlar aún más el cambio de tamaño de la imagen. Esto se hace a través de la función resize_image_url(). Esto permite a los desarrolladores construir barandillas en los módulos para evitar que los creadores de contenido muestren imágenes de gran tamaño en páginas y correos electrónicos. La función también puede ser buena para situaciones en las que el tamaño de una imagen no está dictado por los atributos de altura y ancho dentro del HTML, como una imagen de fondo.

Páginas móviles aceleradas (AMP)

AMP, o páginas móviles aceleradas, es un formato de página específico para dispositivos móviles que carga contenido casi instantáneamente. AMP se puede habilitar en las publicaciones del blog alojado en HubSpot con solo tocar un interruptor. Consulta Cómo usar páginas móviles aceleradas (AMP) en HubSpot para obtener más detalles.


¿Te resultó útil este artículo?
Con este formulario puedes enviar tu opinión sobre nuestros documentos para desarrolladores. Si tienes comentarios sobre el producto de HubSpot, puedes enviarlos al Foro de ideas.