Hola,
Cita:
Posteado originalmente por Voutarks
¿Cuanto tiempo sería razonale mantener las transacciones abiertas?
|
Depende, no existe una regla general para todos los casos.
En el caso de InterBase creo que está en función del tipo de proceso que quieras llevar a cabo. Puede haber transacciones que sólo impliquen un cambio en un flag de un registro y otras que impliquen cientos de operaciones de lectura, actualización y borrados.
La arquitectura multigeneracional de InterBase es muy flexible en este aspecto. El único problema que podría aparecer es, si la transacción ha hecho cambios a la base de datos, el aumento de conflictos de actualización (bloqueos) en otras transacciones concurrentes que también quieran actualizar esos mismos datos.
Cita:
Posteado originalmente por Voutarks
¿Debe ser el usuario con su manejo del programa cliente quien decida cuanto tiempo está abierta
|
En mi opinión no. En general, el usuario final debe estar lo más aislado posible de los detalles de implantación del sistema.
Cita:
Posteado originalmente por Voutarks
o sería conveniente implementar una rutina para que pasado X tiempo se cierren las transacciones informando al usuario?
|
Veo pocos casos donde sea realmente necesario. De todas formas, algunas bibliotecas de componentes ya tienen en cuenta esa posibilidad, caso de
TIBTransaction en IBX (propiedades
DefaultAction e
IdleTimer).
Cita:
Posteado originalmente por Voutarks
¿tendría sentido utilizar DataSnap sólo por esta cuestión, para mantener las tranascciones cerradas?
|
Si es sólo por esa cuestión, no. Aunque existen otras muy buenas razones para utilizarlo.
Saludos.