Notions de base du traitement des transactions
Une transaction est un ensemble de tâches liées entre elles qui échouent ou réussissent globalement. Selon la terminologie propre au traitement des transactions, une transaction est soit validée, soit abandonnée. Pour qu'une transaction soit validée, l'ensemble des participants doit garantir que tout changement apporté aux données sera permanent. Les modifications doivent perdurer en dépit des pannes système et autres événements imprévus.
Il suffit qu'un seul des participants n'apporte pas cette garantie pour que l'ensemble de la transaction échoue. Toutes les modifications apportées aux données dans la portée de la transaction sont restaurées sur un point défini spécifique.
Les transactions lient plusieurs tâches entre elles. Par exemple, imaginez une page ASP.NET qui exécute deux tâches. Tout d'abord, elle crée une nouvelle table dans une base de données. Ensuite, elle appelle un objet spécialisé pour recueillir, mettre en forme et insérer des données dans la nouvelle table. Ces deux tâches sont liées et même interdépendantes, à tel point que vous devez éviter de créer une nouvelle table si vous ne pouvez pas la remplir avec des données. L'exécution des deux tâches dans la portée d'une seule transaction impose cette relation. Si la seconde tâche échoue, la première est restaurée à un stade antérieur à la création de la nouvelle table.
Cet exemple montre qu'une transaction peut être confinée à une seule ressource de données telle qu'une base de données ou une file d'attente de messages. Il est courant que ces ressources de données fournissent des possibilités de transactions locales. Contrôlées par la ressource de données, ces transactions sont efficaces et faciles à gérer.
Les transactions peuvent également englober plusieurs ressources de données. Les transactions distribuées permettent d'incorporer plusieurs opérations distinctes exécutées sur des systèmes différents en une action unique qui soit réussit, soit échoue.
Voir aussi
Traitement des transactions | Propriétés ACID | Limites des transactions | Transactions distribuées