mirror of
https://github.com/KeymonSoft/jRDC-Multi.git
synced 2026-04-17 21:06:24 +00:00
- VERSION 5.09.08
- Se agregó que se puedan configurar en el config.properties los siguientes parametros: - setInitialPoolSize = 3 - setMinPoolSize = 2 - setMaxPoolSize = 5 - Se agregaron en duro a RDConnector los siguientes parametros: - setMaxIdleTime <-- Tiempo máximo de inactividad de la conexión. - setMaxConnectionAge <-- Tiempo de vida máximo de una conexión. - setCheckoutTimeout <-- Tiempo máximo de espera por una conexión.
This commit is contained in:
@@ -22,7 +22,33 @@ Public Sub Initialize(DB As String)
|
||||
Log($"Inicializamos ${DB}, usuario: ${config.Get("User")}"$)
|
||||
pool.Initialize(config.Get("DriverClass"), config.Get("JdbcUrl"), config.Get("User"), config.Get("Password"))
|
||||
Dim jo As JavaObject = pool
|
||||
jo.RunMethod("setMaxPoolSize", Array(5)) 'number of concurrent connections
|
||||
|
||||
' Leer valores del config.properties o usar valores por defecto
|
||||
' Si el parámetro no se encuentra en el archivo .properties, se usará el segundo valor (el por defecto).
|
||||
Dim initialPoolSize As Int = config.GetDefault("InitialPoolSize", 3) ' Por defecto 3
|
||||
Dim minPoolSize As Int = config.GetDefault("MinPoolSize", 2) ' Por defecto 3
|
||||
Dim maxPoolSize As Int = config.GetDefault("MaxPoolSize", 5) ' Por defecto 5
|
||||
|
||||
jo.RunMethod("setInitialPoolSize", Array(initialPoolSize)) ' Sets the inital pool size to 2
|
||||
jo.RunMethod("setMinPoolSize", Array(minPoolSize)) ' Sets the min pool size to 2
|
||||
jo.RunMethod("setMaxPoolSize", Array(maxPoolSize)) ' Max number of concurrent connections
|
||||
|
||||
' Define el tiempo máximo de inactividad en SEGUNDOS.
|
||||
' Una conexión que permanezca en el pool sin ser usada por más de 300 segundos (5 minutos)
|
||||
' será cerrada para liberar recursos, siempre y cuando no se viole el tamaño mínimo del pool (minPoolSize).
|
||||
jo.RunMethod("setMaxIdleTime", Array As Object(300))
|
||||
|
||||
' Define la "edad" o tiempo de vida máximo de una conexión en SEGUNDOS.
|
||||
' Después de 900 segundos (15 minutos) desde su creación, la conexión será marcada para ser
|
||||
' eliminada y reemplazada por una nueva la próxima vez que regrese al pool.
|
||||
' Esto previene problemas con conexiones "viciadas" y mantiene el pool saludable.
|
||||
jo.RunMethod("setMaxConnectionAge", Array As Object(900))
|
||||
|
||||
' Define el tiempo máximo de espera por una conexión en MILISEGUNDOS.
|
||||
' Si todas las conexiones del pool están ocupadas, una nueva petición esperará hasta
|
||||
' 60000 milisegundos (1 minuto). Si ninguna conexión se libera en ese lapso, la petición
|
||||
' fallará con un error. Esto evita que la aplicación se congele bajo carga pesada.
|
||||
jo.RunMethod("setCheckoutTimeout", Array As Object(60000))
|
||||
|
||||
' com.mchange.v2.c3p0.ComboPooledDataSource [
|
||||
' acquireIncrement -> 3,
|
||||
|
||||
Reference in New Issue
Block a user