Resultados de capacidad de alojamiento

Esta página registra evidencia de capacidad medida WebBlocks CMS. Léelo con Validación de capacidad de alojamiento: una calificación parcial solo admite la carga de trabajo que realmente ejecutó.

2026-08-26 Calificación de memoria local

Estado: Núcleo provisional PHP: candidato a memoria y perfil de trabajador multimedia de 24 megapíxeles. Esta aún no es la calificación completa de producción de MySQL porque la ejecución principal utilizó el entorno de prueba de características SQLite del paquete y las operaciones y los perfiles de tráfico no se ejecutaron.

Medio ambiente

Artículo

Valor

Identificador de cualificación

2026-08-26-local-v1

Fuente CMS

WebBlocks CMS v1.73.1, commit 464d20872a64c304ec4e440a6eb6f112fc9534ef

PHP

8.4.2 CLI, NTS

Arnés de prueba de marco

Laravel 13 a través de PHPUnit 12.5.31

Sistema operativo

Darwin 25.5.0, x86_64

Base de datos para ejecución central

SQLite :memory:

GD

Habilitado para JPEG, PNG y WebP

Límite de memoria inicial PHP

1 GiB; restringido por proceso hijo para la matriz

Se registraron los resultados resumidos y las sumas de comprobación de los datos de prueba que aparecen a continuación, pero no se conservaron los registros originales de comandos ni los archivos de muestreo de procesos como artefacto inmutable de cualificación. Esta falta de evidencias es otra razón para mantener la ejecución como provisional y no convertirla en un mínimo certificado para producción. Una nueva ejecución de certificación debe conservar esos archivos originales fuera del paquete público y registrar aquí su ubicación estable.

Resultado del conjunto de funciones principales

El conjunto completo de funciones se ejecutó en un proceso PHP: 567 pruebas y 3076 aserciones. Esto es deliberadamente más acumulativo que una solicitud HTTP aislada ordinaria, pero no sustituye al dispositivo MySQL/HTTP de producción.

PHP memory_limit

Resultado

Reportado PHP pico

Evidencia

96 MiB

Falla

Límite agotado

Error durante SiteCustomHeadApiTest después de 453 pruebas completas

112 MiB

Pase, una carrera

101 MiB

Sin margen de seguridad del 20%

128 MiB

Pasa, cinco de cinco carreras

101 MiB cada uno

Peor duración 39,505 segundos; cuatro ejecuciones posteriores fueron de 33,146 a 33,267 segundos

Según la regla de utilización del 80% del protocolo, 101 MiB requieren 126,25 MiB. Por lo tanto, 128 MiB es el núcleo provisional actual PHP memory_limit candidato. Se convierte en un mínimo certificado de producción solo después de que se apruebe el correspondiente consumidor Laravel, MySQL 8.0, HTTP real, instalación y fijación de contenido representativo.

Resultado de la transformación de los medios

La ruta real MediaTransformService::regenerate() generó las siete variantes del sistema a partir del almacenamiento de transformación en frío. Cada fuente tenía 6.000 × 4.000 píxeles (24 MP). Los pequeños tamaños de bytes comprimidos no debilitan la prueba de memoria de decodificación: las dimensiones de píxeles decodificados impulsan la asignación de GD dominante.

Formato

Bytes de fijación

PHP-pico informado

Opico de proceso observado RSS

JPEG

657,408

32.5 MiB

180.30 MiB

PNG

80,838

32.5 MiB

253.24 MiB

WebP

103,394

32.5 MiB

312.26 MiB peor de cinco ejecuciones medidas

Los cinco picos del proceso WebP fueron 296,80, 310,20, 301,77, 312,26 y 300,96 MiB. Las siete variantes se generaron en cada ejecución; El tiempo de transformación medido fue de 2,717 a 3,149 segundos. La aplicación del margen del 20% al peor caso de 312,26 MiB produce 390,33 MiB. Por lo tanto, el perfil probado en la práctica es:

  • PHP memory_limit: al menos el candidato principal provisional de 128 MiB; y
  • capacidad de memoria real: 512 MiB por trabajador PHP activo simultáneamente que puede realizar una transformación GD de 24 MP.

La capacidad de trabajadores no es la misma que memory_limit. Las asignaciones nativas de GD eran visibles en el RSS del proceso, pero no en el pico de 32,5 MiB de PHP y no fueron detenidas por memory_limit=128M. La RAM total del servidor debe cubrir adicionalmente el sistema operativo, el servidor web, MySQL, las cachés y otros trabajadores PHP concurrentes.

Sumas de comprobación de accesorios:

Archivo

SHA-256

reference-6000x4000.jpg

a9fbf43349cc525164efb256aabde15c3f7fe86c4679400f5f982b4977696d83

reference-6000x4000.png

6e1876a3b91f63d1565822b448c9fbfc07e1e38bc21eb20c7c8d595fb68917e8

reference-6000x4000.webp

e3c8b2bbd4dfee01d64ca2380106ab18dc98acd82ee1eee9b5bb7ae1a269de3f

Límite de producto descubierto por la medición

El CMS limita un archivo multimedia cargado a 50 MiB, pero actualmente no limita las dimensiones de píxeles rasterizados. El tamaño del archivo comprimido no proporciona un límite superior finito en la memoria GD decodificada. En consecuencia:

  • el perfil de trabajador multimedia de 512 MiB está calificado para el dispositivo documentado de 24 MP, no para todos los archivos por debajo de 50 MiB;
  • no se puede certificar un máximo finito de memoria de medios de contrato completo mientras las dimensiones de ráster sean ilimitadas; y
  • Se requiere una política de recuento máximo de píxeles o ancho/alto propiedad del producto antes de que el perfil de medios pueda convertirse en un mínimo universal.

Hasta que exista esa protección, la documentación de alojamiento debe indicar la carga de trabajo de medios admitida junto al valor de la memoria. Los operadores que aceptan imágenes más grandes necesitan proporcionalmente más memoria de trabajo o una política de procesamiento de imágenes externa.

Trabajo de calificación restante

Antes de reemplazar “provisional” por “certificado”, ejecute y conserve:

  • aplicaciones Laravel 12 y 13 similares a producción con MySQL 8.0 mediante la ruta real HTTPS/FPM;
  • el elemento de contenido de referencia principal versionado descrito por el protocolo de validación;
  • perfiles de instalación, copia de seguridad, restauración, transferencia de sitio y actualización nativa del paquete;
  • mediciones de bajo nivel de agua del disco y mediciones de tiempo de espera;
  • pruebas de tráfico con concurrencia de trabajadores declarada; y
  • una repetición de medios después de implementar un contrato de dimensión ráster máxima.

El Lista de verificación de preparación para el alojamiento debe hacer referencia al perfil de resultados exacto seleccionado para una implementación.