Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Laravel Eloquent vs pembuat kueri - Mengapa menggunakan fasih untuk menurunkan kinerja

Eloquent adalah implementasi Laravel dari pola Rekaman Aktif dan dilengkapi dengan semua kekuatan dan kelemahannya.

Rekaman Aktif adalah solusi yang baik untuk memproses satu entitas dengan cara CRUD - yaitu, buat entitas baru dengan properti yang terisi, lalu simpan ke database, muat catatan dari database, atau hapus.

Anda akan mendapat banyak manfaat dari fitur Eloquent seperti pemeriksaan kotor (untuk mengirim SQL UPDATE hanya untuk bidang yang telah diubah), peristiwa model (mis. stempel waktu, penghapusan lunak, ciri khusus Anda) bersemangat/malas memuat, dll. Anda juga dapat menerapkan pola berbasis domain dan menerapkan beberapa bagian logika bisnis di entitas Rekaman Aktif Anda, misalnya, validasi, pengelolaan hubungan, perhitungan, dll.

Tapi, seperti yang sudah Anda ketahui, Active Record hadir dengan beberapa harga performa.

Saat Anda memproses satu record atau beberapa record, tidak ada yang perlu dikhawatirkan. Tetapi untuk kasus ketika Anda membaca banyak catatan (misalnya untuk datagrid, untuk laporan, untuk pemrosesan batch, dll.) Laravel DB biasa metode adalah pendekatan yang lebih baik.

Untuk aplikasi berbasis Laravel kami menggunakan kedua pendekatan yang kami anggap sesuai. Kami menggunakan formulir Eloquent for UI Laravel untuk memproses satu catatan dan menggunakan DB metode (didukung oleh tampilan SQL dengan tweak kinerja spesifik mesin database tambahan) untuk mengambil data untuk tabel UI, tugas ekspor, dll. Ini juga bekerja dengan baik dengan RESTful API - Fasih untuk GET, PUT, POST, DELETE dengan kunci dan DB untuk GET tanpa kunci tetapi dengan filter dan pengurutan serta paging.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Panduan Merancang Database Untuk Newsletter Di MySQL

  2. Kinerja MySQL:MySQL vs. MariaDB

  3. Cara Membuat Tabel di MySQL Workbench menggunakan GUI

  4. Bagaimana saya memutuskan kapan harus menggunakan gabungan kanan/gabungan kiri atau gabungan dalam Atau bagaimana menentukan tabel mana yang berada di sisi mana?

  5. Laravel Eloquent pilih semua baris dengan maks Created_at