Dutch PHP Conference 2027

Configuración en tiempo de ejecución

El comportamiento de estas funciones es afectado por la configuración en el archivo php.ini.

Yac Opciones de configuración
Nombre Por defecto Cambiable Historial de cambios
yac.compress_threshold 4K INI_SYSTEM  
yac.debug 0 INI_ALL  
yac.enable 1 INI_SYSTEM  
yac.enable_cli 0 INI_SYSTEM  
yac.keys_memory_size 8M INI_SYSTEM  
yac.serializer php INI_SYSTEM  
yac.values_memory_size 64M INI_SYSTEM  

Aquí hay una aclaración sobre el uso de las directivas de configuración.

yac.compress_threshold int

Los valores serializados que superan este número de bytes se comprimen (con LZ4, desde Yac 2.4.0) antes de almacenarse. Los valores que superan el límite de 1M por entrada almacenada (YAC_MAX_RAW_COMPRESSED_LEN) se comprimen siempre, sea cual sea esta directiva, porque no pueden almacenarse sin comprimir. El valor predeterminado de 4K activa la compresión; -1 la desactiva para los valores por debajo del límite por entrada almacenada, y los demás valores positivos se ajustan al rango 1024..1M. Comprimir valores grandes ahorra memoria compartida a costa de algo de CPU tanto al almacenar como al recuperar.

yac.debug int

Reservada para depuración. A partir de Yac 2.4.0 esta directiva está registrada pero no tiene ningún efecto.

yac.enable int

Indica si Yac está activado. Si está desactivado, crear una instancia de Yac lanza una excepción.

yac.enable_cli int

Indica si Yac está activado al ejecutarse bajo la SAPI CLI. Está desactivado de forma predeterminada porque los scripts de línea de comandos suelen iniciarse y detenerse de inmediato, y el segmento de memoria compartida se crearía en vano.

yac.keys_memory_size string

Cantidad de memoria compartida para la tabla de claves. Limita cuántas entradas pueden existir a la vez: el valor predeterminado de 8M permite unas 65 536 entradas. Conviene aumentarlo cuando la tasa de aciertos baja y kicks sube; véase Gestión de la memoria para saber cómo se comporta una tabla llena y cuándo eso importa realmente.

yac.values_memory_size string

Cantidad de memoria compartida para almacenar los valores. Los valores se reservan mediante un asignador lineal sobre segmentos de 4M cada uno; cuando ningún segmento tiene sitio para un valor nuevo, el cursor del asignador vuelve al principio y los valores más antiguos se sobrescriben silenciosamente («reciclados»). Sus lecturas pasan entonces a ser fallos de caché, detectados por un control de integridad. Conviene ampliarlo si recycles sube mientras las ranuras todavía tienen sitio, o activar yac.compress_threshold para reducir las cargas útiles grandes. Véase Gestión de la memoria.

yac.serializer string

Serializador utilizado para convertir valores PHP arbitrarios en bytes antes de almacenarlos. Los valores permitidos son php (el predeterminado), json, igbinary y msgpack. Los tres últimos requieren que la extensión se haya compilado con el soporte correspondiente. Los serializadores binarios, como igbinary y msgpack, suelen ser más rápidos y producen datos más pequeños que php.

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top