# Performance Optimization (Laravel) > Tối ưu hóa truy vấn, vấn đề N+1, eager loading, lazy loading, chiến lược caching, lập chỉ mục cơ sở dữ liệu, công cụ profiling - 22 câu hỏi phỏng vấn - Senior - [Câu hỏi phỏng vấn: Laravel](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van.md) ## 1. Vấn đề N+1 trong Laravel là gì? **Câu trả lời** Vấn đề N+1 xảy ra khi Eloquent thực thi một truy vấn để lấy một collection, rồi một truy vấn bổ sung cho mỗi phần tử để tải một quan hệ. Điều này nhân lên số lần truy cập cơ sở dữ liệu và làm giảm nghiêm trọng hiệu năng ở quy mô lớn. Dùng eager loading với with() tải tất cả các quan hệ trong một truy vấn bổ sung duy nhất thay vì N truy vấn. ## 2. Nên dùng phương thức nào để giải quyết vấn đề N+1 khi tải các quan hệ? **Câu trả lời** Phương thức with() thực hiện eager loading, tải các quan hệ trong một truy vấn bổ sung duy nhất. Thay vì thực thi một truy vấn cho mỗi model khi truy cập quan hệ, tất cả các quan hệ được tải trước. Điều này giảm đáng kể số lượng truy vấn SQL và cải thiện hiệu năng. ## 3. Sự khác biệt giữa eager loading và lazy loading là gì? **Câu trả lời** Eager loading tải các quan hệ ngay lập tức cùng truy vấn chính qua with(), trong khi lazy loading tải các quan hệ theo yêu cầu khi truy cập lần đầu. Lazy loading có thể gây ra vấn đề N+1 nếu các quan hệ được truy cập trong một vòng lặp. Eager loading được khuyến nghị khi các quan hệ sẽ được dùng để tránh nhiều truy vấn. ## Còn 19 câu hỏi nữa - Vai trò của Cache::remember() trong Laravel là gì? - Sự khác biệt giữa Cache::remember() và Cache::rememberForever() là gì? Đăng ký miễn phí: https://sharpskill.dev/vi/login ## Các chủ đề phỏng vấn Laravel khác - [Cơ bản về PHP](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/php-basics.md): 25 câu hỏi, Junior - [Kiến thức cơ bản về OOP trong PHP](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/php-oop-essentials.md): 20 câu hỏi, Junior - [Composer & Autoloading](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/composer-autoloading.md): 18 câu hỏi, Junior - [Kiến thức cơ bản về Laravel](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/laravel-fundamentals.md): 20 câu hỏi, Junior - [Routing trong Laravel](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/laravel-routing.md): 20 câu hỏi, Junior - [Blade Templates](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/blade-templates.md): 18 câu hỏi, Junior - [Request & Response](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/request-response.md): 20 câu hỏi, Junior - [Kiến thức cơ bản về Eloquent ORM](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/eloquent-orm-basics.md): 22 câu hỏi, Junior - [Eloquent Relationships](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/eloquent-relationships.md): 25 câu hỏi, Mid-Level - [Migrations & Schema Builder](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/database-migrations.md): 20 câu hỏi, Mid-Level - [Xác thực và Form](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/validation-forms.md): 22 câu hỏi, Mid-Level - [Xác thực](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/authentication.md): 20 câu hỏi, Mid-Level - [Phân quyền và Policies](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/authorization-policies.md): 18 câu hỏi, Mid-Level - [API Resources & Authentication](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/api-resources-authentication.md): 26 câu hỏi, Mid-Level - [Middleware](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/middleware.md): 18 câu hỏi, Mid-Level - [Service Container & DI](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/service-container-di.md): 20 câu hỏi, Mid-Level - [Queues & Jobs](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/queues-jobs.md): 22 câu hỏi, Mid-Level - [Events & Listeners](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/events-listeners.md): 18 câu hỏi, Mid-Level - [Thông báo & Mail](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/notifications-mail.md): 20 câu hỏi, Mid-Level - [File Storage](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/file-storage.md): 18 câu hỏi, Mid-Level - [Testing & PHPUnit](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/testing-phpunit.md): 24 câu hỏi, Mid-Level - [Caching](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/caching.md): 18 câu hỏi, Mid-Level - [Livewire & Inertia](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/livewire-inertia.md): 20 câu hỏi, Mid-Level - [Eloquent Advanced](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/eloquent-advanced.md): 24 câu hỏi, Senior - [Repository Pattern](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/repository-pattern.md): 20 câu hỏi, Senior - [Laravel Packages](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/laravel-packages.md): 20 câu hỏi, Senior - [Security Best Practices](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/security-best-practices.md): 22 câu hỏi, Senior - [Laravel Octane](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/laravel-octane.md): 18 câu hỏi, Senior - [Laravel Distributed Systems](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/laravel-distributed-systems.md): 22 câu hỏi, Senior - [Observability & Monitoring](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/observability-monitoring.md): 20 câu hỏi, Senior - [Deployment & DevOps](https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/deployment-devops.md): 20 câu hỏi, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/vi/technologies/laravel/cau-hoi-phong-van/performance-optimization