
Rendimiento y optimización
Profiler, Blackfire, optimización de queries, lazy loading, eager loading, estrategias de caching
1¿Cuál es el objetivo principal del Symfony Profiler en el ciclo de desarrollo?
¿Cuál es el objetivo principal del Symfony Profiler en el ciclo de desarrollo?
Respuesta
El Symfony Profiler es una herramienta de depuración que recopila información detallada sobre cada petición HTTP: tiempo de ejecución, queries SQL, uso de memoria, cache, events y más. Ayuda a identificar los cuellos de botella y a analizar el comportamiento de la aplicación sin modificar el código. A diferencia de los logs tradicionales, ofrece una interfaz gráfica interactiva accesible a través de la Web Debug Toolbar.
2¿En qué se diferencia Blackfire del Symfony Profiler para el análisis de rendimiento?
¿En qué se diferencia Blackfire del Symfony Profiler para el análisis de rendimiento?
Respuesta
Blackfire es un profiler de aplicaciones PHP que realiza un análisis profundo del código a nivel de función por función, con call graphs, comparaciones de perfiles y detección de regresiones. A diferencia del Symfony Profiler, que ofrece una visión general por petición, Blackfire traza la ejecución completa del código con métricas de CPU, memoria e I/O en cada llamada de función. También permite comparar el rendimiento entre distintas versiones del código.
3¿Cuál es la diferencia entre lazy loading y eager loading en Doctrine ORM?
¿Cuál es la diferencia entre lazy loading y eager loading en Doctrine ORM?
Respuesta
El lazy loading carga las relaciones solo cuando se acceden realmente en el código, lo que reduce la carga inicial pero puede provocar el problema N+1 con múltiples queries adicionales. El eager loading carga las relaciones de inmediato junto con la query principal mediante JOIN, evitando queries adicionales pero aumentando potencialmente la cantidad de datos transferidos. La elección depende de cómo se vayan a usar los datos.
¿Cómo identificar y resolver el problema de N+1 queries con Doctrine?
¿Qué estrategia de caché usar para datos que cambian raramente pero se leen con frecuencia?
+19 preguntas de entrevista
Otros temas de entrevista Symfony
PHP Moderno (8.1+)
Fundamentos de Symfony
Routing & Controllers
Twig & Templates
Fundamentos de Doctrine ORM
Formularios Symfony
Validación de datos
Dependency Injection & Services
Security & Authentication
Doctrine avanzado
API Platform
Serializer Component
Events & Event Subscribers
Console & Commands
Messenger Component
HTTP Client
Cache y Rendimiento
Workflow Component
Testing Symfony
Mailer Component
Traducciones e i18n
EasyAdmin Bundle
Arquitectura Symfony
Seguridad avanzada
Bundles Personalizados
Microservices con Symfony
Real-time & WebSockets
Deployment & DevOps
Domina Symfony para tu próxima entrevista
Accede a todas las preguntas, flashcards, tests técnicos, ejercicios de code review y simuladores de entrevista.
Empieza gratis