Servir activos estáticos como brotli de tiempo de construcción

Performancekamo-marketing
Shipped
20 de agosto de 2026 a las 21:34 UTC
Author
Kamo
Commit
977c49a

La parte marcada es la reacción-dom, y lo comproté correctamente antes de concluir cualquier cosa: es la construcción de la producción (sin marcadores de devo, y los ganchos de perfil "InjectProfilingHooks" y "markComponentRenderStarted" están ausentes El éxito de la exportación es un nombre de exportación, es 19.2.3 dedupedido con Exactamente una copia en todos los trozos, y "ReactProfilingProfiling" está apagado. Ahí no es un error de hinchazón para arreglar, y un marco siempre enviará código una página dada hace no ejecutar, por lo que la propia auditoría no se puede autorizar. Lo que podría arreglarse es cómo se entrega. Salía como fuera como gzip mientras todo cliente moderno pedía brotli: react-dom punk gzip 69,632 --Bretroexo 56.967 (-18%) todos los JS - CSS gzip 675.8 KB --B-B 576.6 KB (-99.2 KB) Brotli en calidad 11 es exactamente la configuración que costó 565 ms por petición en el Documento HTML, y es gratis aquí por la razón opuesta: estos archivos son Hacinado de contenido y servido "immutable", por lo que una URL dada nunca puede cambiar sus bytes. Compresarlos una vez en el tiempo de construcción cuesta unos segundos de construcción y nada en absoluto por petición. El documento mantiene la calidad 5 porque lleva una nonce per-petición y tiene que ser comprimido en vivo - los dos casos realmente quieren respuestas diferentes. El envoltorio sirve al hermano preconstruido cuando existe y el cliente acepta br, y devuelve falsa por cualquier cosa de lo que no sea segura, así que una falta cuesta una estadística (() y cae a través de Next intacto. Verificado en lugar de asumido, ya que esto toca la porción de archivos: de brotli servido cuando se acepta, con la cabecera inmutable preservada Un cliente solo gzip todavía tiene un trabajo 200 a Siguiente - un .br 404s perdido normalmente - traversal codificado -%2e%2e en .js rutas apuntando a server.js y server-nonce.js, que realmente existen fuera de la raíz estática es rechazada sin ninguna fuente filtrada. La llanura no es una prueba válida: el rizo lo normaliza antes de que se envíe la solicitud.

All changes

Como lo que ves enviaste?

Cada una de estas actualizaciones aterriza en su espacio de trabajo automáticamente. Empieza gratis y verlo crecer semana tras semana.

Arranzar gratis para siempreVer Precios