cari

Rumah  >  Soal Jawab  >  teks badan

Adakah MySQL memutuskan sambungan selepas skrip php dilaksanakan?

Terdapat pernyataan SQL yang menyambung ke mysql dalam skrip Apabila dilaksanakan, pelayan mysql membuka utas baharu (atau proses?) Untuk memproses sambungan selepas skrip tamat, adakah ia memutuskan sambungan daripada PHP (atau apache? ). Apakah sambungan panjang mysql itu? Tiba-tiba saya rasa seperti tidak faham apa-apa. . .

PHP中文网PHP中文网2781 hari yang lalu891

membalas semua(5)saya akan balas

  • PHP中文网

    PHP中文网2017-05-16 13:08:27

    Jika anda ingin menutup rangka kerja secara manual, tulis kod penutup dalam pemusnah kelas Ia biasanya dirangkumkan Jangan risau ia biasanya disambungkan ke mysql dalam mod tunggal

    balas
    0
  • 漂亮男人

    漂亮男人2017-05-16 13:08:27

    1.mysql memulakan proses untuk mengendalikan transaksi yang sepadan

    2. Putuskan sambungan dari proses httpd apache PHP berjalan dalam mod mod apache dan memajukan permintaan ke mod panggilan PHP
    PHP dijalankan dalam mod modul apache Proses httpd Sederhana

    3. Kelemahan pautan pendek: Buat sambungan, dan selepas program dijalankan, pautan ke mysql akan terputus secara automatik. Jadi berapa kali PHP dilaksanakan, akan terdapat banyak proses penciptaan dan pelepasan sedemikian. Kerap mencipta dan melepaskan sambungan menggunakan sumber CPU.

     长连接就可以避免每次请求都创建连接的开销,节省了时间和IO消耗。
     
     mysql发现一个链接长时间没有执行查询请求,就会自动断掉这个连接

    balas
    0
  • 大家讲道理

    大家讲道理2017-05-16 13:08:27

    Tidak mungkin untuk mengekalkan sambungan yang panjang dari PHP sahaja, tetapi ada cara untuk mencapainya.

    Jika anda menjalankan PHP dalam mod Apache+php_module, anda boleh mewujudkan pautan kekal melalui mysql_pconnect, tetapi pautan ini dikekalkan oleh Apache (mysql_pconnect tidak dapat mengekalkan sambungan panjang di bawah nginx+fpm, seperti yang dijelaskan oleh dokumentasi rasmi)

    nginx+fpm fpm biasanya ditetapkan kepada statik Melalui sambungan PDO, sambungan yang panjang boleh ditetapkan apabila menyambung ke pangkalan data, dan setiap fpm mengekalkan pautan kekal. Walau bagaimanapun, masih perlu untuk menilai bilangan proses FPM dan bilangan maksimum sambungan pangkalan data berdasarkan sistem Jika terdapat terlalu sedikit permintaan PHP, sebilangan besar sambungan terbiar akan membazirkan sumber (mysql wait_time perlu dikonfigurasikan dengan sewajarnya. ). Jika terdapat terlalu banyak permintaan PHP, terlalu banyak proses FPM akan melebihi had pangkalan data Jumlah maksimum sambungan akan menyebabkan terlalu banyak sambungan. .

    balas
    0
  • 天蓬老师

    天蓬老师2017-05-16 13:08:27

    Secara amnya, php akan membuat pautan pendek setiap kali ia melaksanakan sql Apabila pelaksanaan selesai, php akan memutuskan sambungan (mungkin selepas tamat masa, MySQL akan memutuskan sambungan)

    .

    Pada masa kini, cara biasa untuk mengurangkan overhed IO ini adalah dengan mewujudkan kumpulan sambungan pangkalan data, mengekalkan bilangan sambungan tertentu dan terus mendapatkan sumber yang berkaitan apabila menggunakannya.

    balas
    0
  • 大家讲道理

    大家讲道理2017-05-16 13:08:27

    Jika anda menggunakan php asal, anda perlu menutupnya secara manual. Rangka kerja biasanya dibungkus dan boleh digunakan terus

    balas
    0
  • Batalbalas