Symfony

Performa & Optimasi

Profiler, Blackfire, optimasi query, lazy loading, eager loading, strategi caching

22 pertanyaan wawancaraยท
Senior
1

Apa tujuan utama Symfony Profiler dalam siklus pengembangan?

Jawaban

Symfony Profiler adalah alat debugging yang mengumpulkan informasi rinci tentang setiap request HTTP: waktu eksekusi, query SQL, penggunaan memori, cache, events, dan lainnya. Alat ini membantu mengidentifikasi bottleneck dan menganalisis perilaku aplikasi tanpa mengubah kode. Berbeda dengan log tradisional, alat ini menyediakan antarmuka grafis interaktif yang dapat diakses melalui Web Debug Toolbar.

2

Bagaimana Blackfire berbeda dari Symfony Profiler untuk analisis performa?

Jawaban

Blackfire adalah profiler aplikasi PHP yang melakukan analisis kode mendalam pada tingkat fungsi per fungsi, dengan call graphs, perbandingan profil, dan deteksi regresi. Berbeda dengan Symfony Profiler yang memberikan gambaran per request, Blackfire menelusuri eksekusi kode secara lengkap dengan metrik CPU, memori, dan I/O pada setiap pemanggilan fungsi. Ia juga memungkinkan perbandingan performa antar versi kode yang berbeda.

3

Apa perbedaan antara lazy loading dan eager loading di Doctrine ORM?

Jawaban

Lazy loading memuat relasi hanya ketika benar-benar diakses dalam kode, sehingga mengurangi beban awal tetapi berpotensi menimbulkan masalah N+1 dengan banyak query tambahan. Eager loading memuat relasi langsung bersama query utama melalui JOIN, menghindari query tambahan tetapi berpotensi meningkatkan jumlah data yang ditransfer. Pilihannya bergantung pada bagaimana data akan digunakan.

4

Bagaimana cara mengidentifikasi dan menyelesaikan masalah N+1 queries dengan Doctrine?

5

Strategi caching apa yang digunakan untuk data yang jarang berubah tetapi sering dibaca?

+19 pertanyaan wawancara

Kuasai Symfony untuk wawancara berikutnya

Akses semua pertanyaan, flashcards, tes teknis, latihan code review dan simulator wawancara.

Mulai gratis