Cual es la parte mas dificil de crear un sistema con transacciones?
#1
Posted 19 February 2016 - 11:19 AM
Lo que queria preguntarles es una opinion: la parte mas dificil no es el diseño? Osea pensar como las transacciones explicitas deben interactuar? Y que querys deben incluir cada una?
Osea pensar si un usuario esta haciendo una acceso y de repente otro quiere acceder... osea existe una guia de como desarrollar un sistema que trabaje con transacciones?
Saludos
Enviado desde mi SM-G530M mediante Tapatalk
#2
Posted 19 February 2016 - 01:18 PM
Hola giulichajari, ¡Bienvenido al bote relativista, subjetivo del desarrollo de software! ![]()
No hay tal guía. De haberla todos estaríamos como locos en un mar de goce digital.
Lo que hoy parece ser una buena opción, mañana para otro proyecto (similar o no) puede que no lo sea.
Y no sólo es en cuanto a ordenar y determinar cuando abrir y finalizar una transacción. Lo es en todo el desarrollo del software. Lo importante es que logres encontrar tu punto, cuando te sientas cómodo y seguro de que la decisión tomada en cada encrucijada sea la que más beneficio o ventaja te aporta.
Si hay ciertas recomendaciones, en el tema de transacciones, que puedes considerar:
1. Ser lo más breves posibles. Examina donde está el punto más cercano a la operación que se necesite y allí mismo inicia la transacción. De forma análoga: finalizala lo más pronto posible. Busca minimizar los tiempos en que una transacción esté abierta.
2. Trabaja con los niveles de aislamiento. En informes y consultas a modo de lectura, es recomendable que las transacciones para éstos sean de sólo lectura y apliquen sobre los registros que efectivamente hayan sido confirmado por otras transacciones. Ahora bien para consultas de monitoreo quizá sea conveniente que el nivel de aislamiento a aplicar esté configurado para que pueda leer todos los cambios aplicados como los de las transacciones activas y en ejecución.
Pero claro: esto no es ley. Pueden aparecer excepciones a estas reglas.
Saludos,










