Domanda

sto implementando un'applicazione che avrà un sacco di clienti che interrogano un sacco di piccoli pacchetti di dati dal mio webserver. Ora sono sicuro se utilizzare connessioni dati persistenti al database o meno. Il database è attualmente sullo stesso sistema come il server web e potrebbe collegarsi attraverso la presa, ma questo potrebbe cambiare nel prossimo futuro.

Per quanto ne so un paio di versioni di PHP fa mysqli_pconnect è stato rimosso perché si comportava in maniera subottimale. Nel frattempo sembra di essere di nuovo.

In base alla mia scenario Suppongo non avrò un'altra occasione per migliaia manico di query al minuto, ma con un sacco di connessioni persistenti e una configurazione di MySQL che le riserve solo poche risorse per connessione, giusto?

Grazie per il vostro contributo!

È stato utile?

Soluzione

Quello che è successo quando l'avete provato?

Con la volontà nido nel mondo, non c'è modo pratico si può trasmettere tutto l'informaton necessaria per le persone a fornire una risposta definitiva in una risposta SO. Tuttavia di solito C'è molto poco in testa nello stabilire una connessione MySQL, soprattutto se si risiede sullo stesso sistema come il client di database (in questo caso il server web). C'è anche meno overhead se si utilizza un file system, piuttosto che una presa di rete.

Quindi, io suggerirei di astrarre tutte le chiamate al database in modo da poter passare facilmente tra i tipi di connessione, ma scrivere il vostro sistema di utilizzare connessioni on-demand, e si garantisce che il codice rilascia esplicitamente la connessione non appena possibile - allora vedere come si comporta.

C.

Altri suggerimenti

Are PHP connessioni persistenti male?

  

Il problema è che ci può essere solo così   molte connessioni attive tra Host   “Apache” e Host “MySQL”

connessioni persistenti di solito danno problemi che si colpisce il numero massimo di connessioni. Inoltre, nel tuo caso, non dà un grande vantaggio in quanto il server di database è sullo stesso host. Keep it per le connessioni normali per ora.

Come si suol dire, la tua situazione potrebbe essere diversa, ma non ho mai avuto buone esperienze con connessioni persistenti da PHP, tra cui MySQL e Oracle (sia ODBC e OCI8). Ogni volta che ho provato, il sistema non riesce a riutilizzare le connessioni. Con alto carico, finisco per colpire il limite superiore mentre ho centinaia di connessioni inattive.

Quindi il mio consiglio è che in realtà provare e scoprire se il set-up è il riutilizzo di connessioni correttamente. Se non funziona come previsto, non sarà un grosso perdere comunque:. Apertura di una connessione MySQL non è particolarmente costoso rispetto ad altri DBMS

Inoltre, non dimenticare di ripristinare tutte le impostazioni relative al momento opportuno (qualunque valore di sessione si cambia, sarà in attesa per voi la prossima volta può fortificare una connessione e capita di riutilizzare quella).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top