POLITICA DE COOKIES

Q2BSTUDIO.COM utiliza cookies técnicas, analíticas, de sesión y de publicidad con la finalidad de prestar un mejor servicio. No obstante, necesitamos su consentimiento explícito para poder utilizarlas. Así mismo puede cambiar la configuración de las cookies u obtener más información aquí .

Caché Laravel: Evita llamadas redundantes a has y missing

Caché Laravel: Evita llamadas redundantes a has y missing

Publicado el 04/09/2025

Consejo de Laravel Cache: evita llamadas redundantes a has o missing. Cuando trabajas con la caché de Laravel es común ver un patrón que funciona pero añade sobrecarga innecesaria. Con un pequeño ajuste puedes mejorar rendimiento y uso de memoria sin cambiar la lógica de negocio.

El patrón habitual con redundancia suele ser así: defines una clave de caché como user-count y un TTL de 10 minutos, compruebas Cache::has para ver si existe, si es cierto haces Cache::get y, si no existe, consultas la base de datos con User::count y guardas con Cache::put. El problema es sutil pero real: cuando la clave existe haces dos operaciones de caché. En Laravel Telescope verás dos hit sobre la misma clave en líneas consecutivas.

La forma optimizada es saltarte has y leer directamente con Cache::get. Si el resultado no es null devuelves el valor y te ahorras una operación. Si es null ejecutas la consulta, guardas con Cache::put y devuelves. Alternativamente, puedes usar Cache::remember que combina lectura y escritura en una sola operación, dejándolo en una línea y con un único hit.

Cuando remember no basta, por ejemplo en integraciones con APIs de terceros donde aplicas etiquetas de caché, TTL dinámico, manejo de errores y tratamiento de respuestas grandes, la idea sigue siendo la misma: intenta primero Cache::tags([...])->get(clave) y, solo si devuelve null, realiza la petición HTTP, transforma la respuesta y guarda con put. Evitas la secuencia has seguido de get, reduces operaciones y minimizas el coste de CPU y memoria, algo especialmente notable con cargas grandes como JSON de 1 MB.

Resultados medidos con respuestas API voluminosas: antes usando has, unos 14 ms por ejecución, 47 MB de memoria y 2 operaciones de caché; después, leyendo directamente sin has, alrededor de 6 ms, 43 MB y solo 1 operación. Ambos casos son rápidos, pero la versión optimizada casi duplica la velocidad y reduce la memoria.

Conclusión práctica: evita llamadas innecesarias a Cache::has o Cache::missing cuando inmediatamente después harás Cache::get. Cada operación de caché tiene coste. El patrón recomendado es directo y claro: primero intenta obtener el valor, si es null calcula y guarda, y procede. Este pequeño cambio, multiplicado por miles de solicitudes, significa respuestas más rápidas y menos memoria, gratis. Nota útil: si necesitas almacenar explícitamente null como valor válido, considera remember o usa un valor centinela para diferenciar null intencional de ausencia de clave.

En Q2BSTUDIO ayudamos a equipos a construir sistemas de alto rendimiento con buenas prácticas de caché, arquitectura y automatización. Desarrollamos aplicaciones a medida y software a medida, integramos pipelines modernos y observabilidad, y desplegamos en nubes punteras. Si buscas escalabilidad y resiliencia en entornos híbridos o multicloud, consulta nuestros servicios cloud AWS y Azure. Somos especialistas en inteligencia artificial, ciberseguridad, servicios inteligencia de negocio, ia para empresas, agentes IA y power bi, para que tus productos crezcan con seguridad, datos y automatización desde el primer día.

Fin del artículo, inicio de la diversión
Construyendo software juntos

Dando vida a tus ideas desde 2008

Diseñamos aplicaciones móviles y de escritorio innovadoras que cumplen con tus requisitos específicos y mejoran la eficiencia operativa.
Más info
Cuéntanos tu visión
Sea cual sea el alcance, podemos convertir tu idea en realidad. Envíanosla y charlemos sobre tu proyecto o una colaboración futura.
Contáctanos
artículos destacados
Live Chat
Enviado correctamente.

Gracias por confiar en Q2BStudio