Table des matières:
- Modèles de transaction ACID et BASE
- Gestionnaires de transactions
- Autres considérations avec les systèmes de processus de transaction
Les entreprises de nombreux types différents peuvent investir dans un système de processus de transaction dans le cadre de services marchands informatiques ou d'autres parties de l'architecture logicielle. Cependant, comme certains autres termes autour de l'informatique, cette étiquette peut sembler un peu vague. C'est en partie parce que le traitement des transactions n'est pas seulement un terme pour les transactions financières, bien que de nombreux systèmes TPS, tels que ceux pour le traitement des cartes de crédit, puissent tourner autour du processus de changement de mains.
Essentiellement, le traitement des transactions est un modèle pour diverses transactions, y compris les transactions financières et d'autres processus comme les vérifications. Les experts comparent le traitement des transactions avec un autre type de modèle appelé traitement par lots, où un plus grand nombre de transactions individuelles sont traitées collectivement. Les deux peuvent être appliqués aux systèmes de commerce électronique standard qui gèrent les transactions financières.
Lorsque nous parlons de traitement des transactions, le terme «transaction» fait référence à l'ensemble du processus. Pour réussir, le processus doit être achevé du début à la fin. L'argent doit sortir d'un compte et aller dans un autre compte. Avec d'autres types de transactions non financières, différentes parties d'une architecture logicielle doivent être mises à jour. Sinon, le système peut avoir ce qu'on appelle une «transaction abandonnée» (ou ce que Microsoft appelle «perte d'intégrité»).
L'opposé d'une transaction abandonnée est ce qu'on appelle une «transaction durable». Ces transactions durables sont la base fondamentale de nombreuses activités en ligne, telles que la réservation de billets ou d'événements, le traitement des cartes de crédit et d'autres accords de contrepartie si de multiples systèmes doivent être mis à jour, et un événement numérique doit s'aligner sur un autre. Alors, comment le traitement des transactions contribue-t-il à garantir ce type de durabilité? Nous allons jeter un coup d'oeil.
Modèles de transaction ACID et BASE
Au fil du temps, les spécialistes des données ont produit divers modèles qui favorisent des transactions réussies et durables. L'un d'eux est appelé atomicité, cohérence, isolation et durabilité, ou ACIDE. Ce système «dur» de vérification des transactions a conduit à un autre modèle appelé fondamentalement disponible, état souple, cohérence éventuelle ou BASE, une alternative plus polyvalente. Ces deux modèles peuvent guider les professionnels de l'informatique vers des systèmes de traitement des transactions plus cohérents. Pour une idée simple de la façon dont ces deux méthodes fonctionnent, imaginez deux de ces anciens systèmes de chapiteaux analogiques dans une gare, où les mises à jour impliquent divers brassages avec des informations d'horaire. L'un d'eux claque furieusement pendant quelques secondes, puis s'arrête. L'autre continue d'avancer, se détendant au fil du temps de quelques plunks et thunks effilés jusqu'à un silence final. Le premier exemple fait référence à ACID, tandis que le second représente BASE. Dans les deux cas, l'objectif est le même: la résolution totale des données. (Pour une lecture de fond sur ACID, consultez notre Introduction aux bases de données.)Gestionnaires de transactions
Un autre élément de base des systèmes de processus de transaction est le gestionnaire de transactions. Ce terme est l'un des nombreux termes basés sur la personnification dans l'informatique moderne. Il n'y a pas si longtemps, le terme désignait une personne chargée de réaliser des transactions, généralement financières. À cette époque, un caissier de banque aurait pu être appelé un gestionnaire de transactions. En revanche, le terme tel qu'il est utilisé aujourd'hui se réfère largement à un élément intangible du système de traitement des transactions dans son ensemble, mais avec un rôle prédéfini.
L'utilisation de gestionnaires de transactions, tout en permettant différents types de TPS, peut être problématique. Par exemple, les développeurs qui travaillent avec J2EE ou des ressources similaires peuvent se retrouver à perte lorsqu'un appel au gestionnaire de transactions renvoie diverses erreurs. Toutes sortes de déclarations et de variables doivent être correctes pour appeler efficacement le gestionnaire de transactions, et les forums de développeurs regorgent d'histoires sur ce type de configurations qui n'étaient tout simplement pas correctes.
Des guides de bonnes pratiques spécifiques au langage (comme celui-ci pour J2EE) peuvent fournir des conseils sur la gestion des transactions et d'autres méthodes de support telles que les frameworks de développement d'applications. Les autres ressources de transaction incluent l'Object Transaction Service (OTS), qui a été produit par l'Object Management Group pour gérer certaines complexités et processus multiplateformes.
Microsoft a également proposé des ressources plus larges; les versions plus récentes de Windows OS sont livrées avec Kernel Transaction Manager (KTM), qui peut prendre en charge les applications C ++. Microsoft propose également depuis 2000 le DTC (Microsoft Distributed Transaction Coordinator) pour la prise en charge des transactions multiplateforme.
Autres considérations avec les systèmes de processus de transaction
En général, il existe une variété d'objectifs clés qui doivent être atteints pour des configurations TPS efficaces. Les données doivent être accessibles dans des structures de données qui fonctionnent bien et doivent être protégées contre divers types de pannes. Les systèmes de sauvegarde sophistiqués aident à fournir des garanties contre les cyberattaques, les catastrophes naturelles ou d'autres types de responsabilités. Certains des outils mentionnés ci-dessus ont été créés pour aider à faire face à la corruption de données et à d'autres problèmes qui pourraient avoir un effet sur la durabilité des transactions.
Les transactions durables signifient que les mises à jour multiplateformes doivent également être résolues. Les modèles ACID et BASE sont instructifs ici. Une grande partie du travail effectué par les professionnels modernes est liée à ce type de cohérence et à la garantie qu'une partie d'un système de données correspond à une autre, le tout afin de prendre en charge les processus clés généralement qualifiés de transactions.
De toute évidence, il existe des éléments beaucoup plus détaillés des systèmes TPS et des problèmes et des solutions au cas par cas, mais où un groupe diversifié de personnes pourrait être impliqué pour les résoudre (par exemple, lorsqu'une entreprise a certains problèmes avec ses fournisseurs de technologie), il est logique de clarifier d'abord cette terminologie informatique clé.