Visualizzazione risultati 1 fino 5 di 5

Discussione: Durata connessione al database

  1. #1
    Guest

    Predefinito Durata connessione al database

    Salve a tutti,
    Dato che non sono riuscito a trovare un titolo adeguato cerco di spiegarmi un po' meglio.
    Mentre stavo scrivendo una pagina con diverse query MySql mi è sorto un dubbio abbastanza stupido: "Meglio aprire la connessione al database ad inizio pagina e chiuderla alla fine o aprire e chiudere in maniera abbastanza atomica ad ogni query?".
    La seconda idea mi sembra un po' macchinosa e, chiedendo una nuova connessione ogni volta, anche più dispendiosa in termini di tempo di caricamento, d'altrocanto la prima mi sembra meno sicura, tenedo aperto il database per un tempo relativamente lungo...
    Poi magari non cambia assolutamente nulla ma se qualcuno mi sapesse dare delucidazioni mi farebbe un piacere!
    ciao a tutti e grazie in anticipo,

    J.L. Chaos webmaster di O-Soft.org

  2. #2
    L'avatar di saitfainder
    saitfainder non è connesso Sëniör Stäff
    Data registrazione
    06-12-2002
    Residenza
    Torino
    Messaggi
    8,715

    Predefinito

    Sicuramente aprire e chiudere in continuazione comporta una perdita di tempo inutile e dannosa.

    Perché sarebbe meno sicuro tenere aperta la connessione per tutta la durata dello script?


    «È una mia peculiarità distorcere la verità e inventarne di nuove.»
    «I tuoi orientamenti hanno su di me un effetto prossimo allo zero.»


  3. #3
    Guest

    Predefinito

    é solo una mia supposizione, facendo un paragone stupido: " più lasci la porta di casa aperta più è probabile che ti entrano i ladri...".
    Comunque, come ho detto, magari è solo un dubbio un po' stupido XD.

  4. #4
    L'avatar di dementialsite
    dementialsite non è connesso Super Moderatore
    Data registrazione
    19-10-2004
    Residenza
    fuori Padova
    Messaggi
    5,046

    Predefinito

    Tieni conto che la tua "soluzione" potrebbe anche essere improponibile: un esempio? Se esegui un INSERT su una tabella con ID AUTO_INCREMENT, e chiudi la connessione, poi non sei più in grado di recuperare l'ID del record che hai appena inserito (per inserirlo in una "chiave esterna" di un'altra tabella, ad esempio).

    Inoltre, aprire e chiudere continuamente connessioni comporta sprechi di risorse e di tempo, rischiando così che il tuo script PHP finisca per essere arrestato per timeout. A questo punto, ti chiedo: meglio paranoiarsi su "tenere troppo tempo la porta aperta", oppure rischiare di trovarsi dati inconsistenti nel tuo database?

    Stammi bene...
    Le questioni tecniche hanno risposte migliori nel forum pubblico, non trovi?

    When you don't know your next step... improvise

    ALTERVISTA WANTS YOU!
    Vuoi diventare moderatore su AlterVista? Scopri come...

  5. #5
    Guest

    Predefinito

    Era solo una curiosità non una paranoia :) comunque anche io pensavo fosse meglio guardare all'aspetto delle prestazioni che non a quello di sicurezza esagerata (tanto che spesso in pagine con molte query apro la connessione ad inizio del codice e la chiudo alla fine...).
    Grazie mille ad entrambi delle risposte!

    ciao

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •