Estoy leyendo hibernate y me encontré con declaraciones como "Las conexiones JDBC abiertas en múltiples solicitudes no es algo bueno porque es un recurso costoso".
¿Qué se entiende por recurso costoso?
Editar: estoy agregando lo que el usuario desconocido ha agregado como comentario a continuación.
Si establecer una conexión de base de datos es costoso, entonces ¿por qué no usar lo mismo una y otra vez (no almacenar en caché), en lugar de cerrarlo y abrirlo cada vez?
language-agnostic
Vinoth Kumar CM
fuente
fuente
Respuestas:
Un recurso costoso es aquel que:
Cada uno de los recursos caros puede proporcionar problemas de escalabilidad . En resumen, no puede tener muchas de estas costosas operaciones sucediendo al mismo tiempo o no podrá responder a sus usuarios lo suficientemente rápido.
fuente
Puede ser una variedad de cosas que dependen del recurso específico. Entonces puede tener lo siguiente:
y así.
Otras cosas que pueden hacer que algo sea costoso podrían ser si requiere acceso al disco duro o la red durante su funcionamiento, etc.
fuente
Caro debe tener el prefijo "computacionalmente". El gasto computacional se utiliza para referirse a la cantidad de tiempo o recursos (CPU, memoria, disco, ancho de banda de red) necesarios para completar una operación, algoritmo o programa.
fuente
El gasto de las conexiones a la base de datos proviene de varios factores.
Dicho esto, debe mantener la conexión (o al menos la transacción) abierta el tiempo suficiente para asegurarse de que su transacción pase la prueba ACID . (Duradero aislado atómico consistente)
fuente