Hace un tiempo Trabajé para conseguir una implementación de ad-hock trabajando ... Traté la conexión w/dbi como un recurso limitado y la compartí entre los diversos subprocesos usando un mecanismo de bloqueo de archivos. Mi aplicación de subprocesos múltiples solo se ha conectado al dbi a través de un script perl independiente que se ejecuta como daemon.
En Linux, el fin multiproceso se hizo a través de tenedor, en las ventanas que utilicé lo que viniera con la implementación ActivePerl por defecto (no recuerdo)
Probé con ellos se comunican a través de memoria compartida, pero terminó apenas usando un compartidas archivo en su lugar. Linux tiene un modo confiable de agregar, por lo que fue un pedazo de pastel. En Windows era mucho más difícil sincronizarlos.
Recientemente He examinado las transacciones de la base de datos, con cada instancia del hilo teniendo su propia conexión a la base de datos, y dejando que la base de datos maneje los detalles de la conexión.
Esto es con mysql, pero estoy seguro de que Oracle admite transacciones.
apache :: dbi funciona/funciona bien con mod_perl para mantener estas conexiones activas entre cada ejecución del script (antes de usar esto, cada conexión realizada llevaba bastante tiempo).
Sus resultados pueden variar.