Volevo solo conoscere il concetto di pool di connessioni al database e come è stato realizzato.Che cos'è il pool di database?
risposta
Database collegamento Il pool è un metodo utilizzato per mantenere le connessioni del database aperte in modo che possano essere riutilizzate da altri.
In genere, l'apertura di una connessione al database è un'operazione costosa, soprattutto se il database è remoto. Devi aprire le sessioni di rete, autenticarti, verificare l'autorizzazione e così via. Il pooling mantiene attive le connessioni in modo tale che, quando viene richiesta una connessione successiva, uno di quelli attivi venga utilizzato preferibilmente per doverne creare un altro.
riferimento al diagramma seguente per i prossimi paragrafi:
+---------+
| |
| Clients |
+---------+ |
| |-+ (1) +------+ (3) +----------+
| Clients | ===#===> | Open | =======> | RealOpen |
| | | +------+ +----------+
+---------+ | ^
| | (2)
| /------\
| | Pool |
| \------/
(4) | ^
| | (5)
| +-------+ (6) +-----------+
#===> | Close | ======> | RealClose |
+-------+ +-----------+
Nella sua forma più semplice, è solo una chiamata API simile (1) per una chiamata API open-connessione che è simile al "real " uno. Questo controlla innanzitutto il pool per una connessione adeguata (2) e, se disponibile, viene fornito al client. Altrimenti viene creato un nuovo (3).
Analogamente, c'è una chiamata API stretta (4) che in realtà non chiama la reale close-connection, piuttosto mette la connessione nel pool (5) per un uso successivo. A un certo punto, le connessioni in piscina potrebbero essere in realtà chiuse (6).
Questa è una spiegazione piuttosto semplicistica. Le implementazioni reali possono essere in grado di gestire connessioni a più server e più account utente, possono pre-allocare alcune linee di base delle connessioni in modo che alcune siano pronte immediatamente e potrebbero effettivamente chiudere le vecchie connessioni quando il modello di utilizzo si attenua.
immagini parlano più di mille parole (paxdiablo ha fornito una descrizione impressionante):
È possibile utilizzare la libreria Commons Apache per il pool di connessioni implementazione in modo trasparente: http://commons.apache.org/dbcp/
DBCP è anche un pool di Hibernate supportato: http://www.informit.com/articles/article.aspx?p=353736&seqNum=4
Concetto di pooling di connessioni non solo in Java ma in molti linguaggi di programmazione. La creazione di un nuovo oggetto di connessione è costosa, quindi un numero fisso di connessioni viene creato e mantenuto nel ciclo di vita creando un pool virtuale) vedi domanda 14 in questa pagina
- 1. Pool di connessioni con database di Access
- 2. Che cos'è realmente il pool di connessioni?
- 3. jetty mysql database pooling pool
- 4. Pool di connessione del database JBoss
- 5. Come utilizzare il pool di connessioni al database in Sequelize.js
- 6. Che cos'è il pool di buffer mappato/pool di buffer diretti e come aumentarne le dimensioni?
- 7. Errore del pool di connessione del database di 4 rails
- 8. Che cos'è il pool di applicazioni in IIS e Asp.Net?
- 9. Il modo migliore per gestire il pool di thread contro la coda di database
- 10. Spork, RSpec e database_cleaner che distruggono il database di sviluppo
- 11. Creazione di un pool di connessione al database
- 12. Sto utilizzando il pool di connessioni JDBC?
- 13. Che cos'è un pool di thread?
- 14. Ciascun pool php-fpm ha il proprio pool di memoria?
- 15. Strategia del pool di connessione al database per i microservizi
- 16. Pool di connessioni per connessioni dinamiche al database
- 17. Come sovrascrivere pool e reaping_frequency nel database di heroku.yml
- 18. Pool di stringhe vs Pool costante
- 19. Entity Framework utilizza il pool di connessioni del database? ed è di default?
- 20. 500 thread di lavoro, che tipo di pool di thread?
- 21. Azure: come spostare i database in Elastic Pool
- 22. È possibile il pool di connessioni HTTP?
- 23. Configurare il pool di connessioni Hibernate C3P0
- 24. MySQL - connessione permanente contro il pool di connessioni
- 25. Parametri pool di connessioni ODP.NET
- 26. HttpClient 4.3 bloccando il pool di connessione
- 27. Pool di connessioni JMS o pool di sessioni
- 28. Come monitorare il pool di connessioni attive in SQL Server?
- 29. Che cosa significa il termine database legacy?
- 30. Npgsql: Timeout durante il collegamento dal pool
Da dove si ottiene il piccolo grafico? –
L'ho fatto da zero (stupido me). Se vuoi vedere una grafica decente, dai un'occhiata alla risposta di zengr. – paxdiablo
Grazie mille ... paxdiablo per spiegazione e grafico. – sagar27