Ir al contenido



Foto

Cual es la parte mas dificil de crear un sistema con transacciones?


  • Por favor identifícate para responder
1 respuesta en este tema

#1 giulichajari

giulichajari

    Advanced Member

  • Miembros
  • PipPipPip
  • 365 mensajes

Escrito 19 febrero 2016 - 11:19

Hola amigos.. he programado transacciones en delphi. Uso un componente de teansaccion y seteo sus caracteristicas. Luego en codigo asigno los querys el rollback y el commit.

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
  • 0

#2 Delphius

Delphius

    Advanced Member

  • Administrador
  • 5.861 mensajes
  • LocationArgentina

Escrito 19 febrero 2016 - 01:18

Hola giulichajari, ¡Bienvenido al bote relativista, subjetivo del desarrollo de software! :D

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,


  • 1