Symfony

Performance & Optimierung

Profiler, Blackfire, Query-Optimierung, Lazy Loading, Eager Loading, Caching-Strategien

22 Interview-Fragen·
Senior
1

Was ist der Hauptzweck des Symfony Profiler im Entwicklungszyklus?

Antwort

Der Symfony Profiler ist ein Debugging-Tool, das detaillierte Informationen zu jeder HTTP-Anfrage sammelt: Ausführungszeit, SQL-Abfragen, Speicherverbrauch, Cache, Events und mehr. Er hilft dabei, Engpässe zu identifizieren und das Verhalten der Anwendung zu analysieren, ohne den Code zu ändern. Anders als klassische Logs bietet er eine interaktive grafische Oberfläche, die über die Web Debug Toolbar zugänglich ist.

2

Wie unterscheidet sich Blackfire vom Symfony Profiler bei der Performance-Analyse?

Antwort

Blackfire ist ein PHP-Anwendungsprofiler, der eine tiefgehende Codeanalyse auf Funktionsebene durchführt, mit Call Graphs, Profilvergleichen und Regressionserkennung. Anders als der Symfony Profiler, der einen Überblick pro Anfrage liefert, verfolgt Blackfire die vollständige Codeausführung mit CPU-, Speicher- und I/O-Metriken bei jedem Funktionsaufruf. Er ermöglicht außerdem den Performancevergleich zwischen verschiedenen Code-Versionen.

3

Was ist der Unterschied zwischen Lazy Loading und Eager Loading in Doctrine ORM?

Antwort

Lazy Loading lädt Beziehungen nur dann, wenn im Code tatsächlich darauf zugegriffen wird, was die anfängliche Last reduziert, aber durch mehrere zusätzliche Abfragen das N+1-Problem verursachen kann. Eager Loading lädt Beziehungen sofort zusammen mit der Hauptabfrage via JOIN, vermeidet zusätzliche Abfragen, erhöht aber möglicherweise die übertragene Datenmenge. Die Wahl hängt davon ab, wie die Daten verwendet werden.

4

Wie identifiziert und löst man das N+1-Queries-Problem mit Doctrine?

5

Welche Caching-Strategie sollte man für Daten verwenden, die sich selten ändern, aber häufig gelesen werden?

+19 Interview-Fragen

Meistere Symfony für dein nächstes Interview

Zugang zu allen Fragen, Flashcards, technischen Tests, Code-Review-Übungen und Interview-Simulatoren.

Kostenlos starten