SQLite Connection Pool en Java – Base de datos bloqueada

Ya he leído varios subprocesos relacionados sobre SQLite en entornos de subprocesos múltiples, pero no pude encontrar una statement clara, por lo que perdóname que menciono este tema una vez más.

Necesito acceder a la base de datos de la aplicación desde varios subprocesos para ejecutar las instrucciones de actualización. La base de datos en sí puede ser SQLite o MySQL, dependiendo de la elección del usuario. Para el controlador de MySQL, he implementado un grupo de conexiones utilizando la biblioteca tomcat-jdbc. Ahora estoy buscando la mejor manera para el controlador de SQLite, ya que la agrupación de conexiones normal no debería funcionar, ya que SQLite solo admite una conexión de escritura a la vez que bloquea toda la base de datos.

¿Debo seguir adelante y hacer que todos los subprocesos utilicen la misma conexión uno tras otro (al sincronizar la conexión?) O debo crear un grupo de conexiones utilizando la biblioteca tomcat que ya está presente y que contiene solo la conexión? ¿Podría un grupo de conexiones con una conexión ser sobredimensionado?

Ya que es una base de datos integrada de un solo archivo, la agrupación difícilmente será beneficiosa.

https://web.archive.org/web/20130410192252/http://sqlite.phxsoftware.com/forums/p/682/3034.aspx

Como el sitio original está inactivo, proporcionaré el resumen:

Tengo mi agrupación implementada y 1000 comandos utilizando una conexión agrupada y la velocidad agrupada fue mucho más cercana a la velocidad de conexión única.

Many non-pooled connections : 2875.0 ms Many pooled connections : 93.8 ms Pooled with reset : 546.9 ms One Connection : 46.9 ms 

Así que el consenso es que la puesta en común no es muy beneficiosa.

http://www.sqlite.org/faq.html#q5

http://www.sqlite.org/threadsafe.html