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

Zend Framework dan Mysql - sangat lambat

Kiat:

  • Cache tabel metadata . Secara default, Zend_Db_Table mencoba menemukan metadata tentang tabel setiap kali objek tabel Anda dipakai. Gunakan cache untuk mengurangi berapa kali ia harus melakukan ini. Atau hard-code di kelas Tabel Anda (catatan:tabel db bukan model ).

  • Gunakan EXPLAIN untuk menganalisis rencana optimasi MySQL. Apakah menggunakan indeks secara efektif?

    mysql> EXPLAIN SELECT * FROM standard_accessory WHERE model = 'abc';
    
  • Gunakan BENCHMARK() untuk mengukur kecepatan query, tidak menggunakan PHP. Subkueri harus mengembalikan satu kolom, jadi pastikan untuk mengembalikan kolom yang tidak diindeks sehingga kueri harus menyentuh data, bukan hanya mengembalikan entri indeks.

    mysql> SELECT BENCHMARK(1000, 
      (SELECT nonindexed_column FROM standard_accessory WHERE model = 'abc'));
    
  • Perhatikan bahwa Zend_Db_Adapter lazy-load koneksi db-nya saat Anda membuat kueri pertama. Jadi jika ada kelambatan dalam menghubungkan ke server MySQL, itu akan terjadi saat Anda membuat instance objek Tabel (ketika menanyakan metadata). Ada alasan mengapa ini bisa memakan waktu lama? pencarian DNS , mungkin?



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. C# Pengumpulan Koneksi MySQL

  2. Bagaimana cara membuang file MySQL tanpa Kunci Asing melalui baris perintah?

  3. Cara memberi makan kueri mysql dari bash

  4. Bagaimana cara mendapatkan jumlah baris yang terpengaruh, saat menjalankan kueri MySQL dari bash?

  5. java.lang.AbstractMethodError:com.mysql.jdbc.Connection.isValid(I)Z