255 Shares 9694 views

Qu'est-ce qu'une transaction? systèmes de traitement des transactions

Dans un monde où tout change si vite, nous ne pouvons pas une minute d'arrêt. Cela vaut à la réception de nouvelles informations. terme inconnu ou la dernière version du logiciel – il est l'occasion de remplir les connaissances dans un domaine particulier. Aujourd'hui, nous allons parler de ce que la transaction, comment cela fonctionne.

Introduction à la terminologie

Une variété de logiciels pour l' automatisation des processus d'affaires solidement établie sur le marché au cours des 15 dernières années. Cela nécessite la capacité de travailler avec des logiciels sur différents niveaux d'interaction: comme l'opérateur, programmeur, comptable, etc. Il est donc important de comprendre certains des mécanismes du programme. Pour commencer, nous allons traiter ces termes fréquents et effrayant beaucoup une transaction. Le plus souvent, d'emprunter les mots de la belle cachée loin d'être un phénomène aussi complexe, que de nombreux observateurs, en poussant un nouveau terme, en essayant à l'oreille. Comprenons qu'une telle transaction.

la définition

Cette notation est utilisée pour faire référence à tout produit qui met en oeuvre la base de données. Plusieurs opérations sont logiquement combinés en un seul et en cours d' exécution en alternance à l'autre, et il y a une transaction. Dans la vie quotidienne, la transaction peut être considérée comme une chaîne de procédures telles que « éveillé – lavé – habillé – petit déjeuner – est allé travailler. »

Tenir compte du concept ci-dessus pour les produits Exemple 1C. Transaction – c'est la même séquence indivisible. Un bon modèle peut servir d'enregistrement de l'unité de marchandise: ouvrir le répertoire désiré, créer une nouvelle entrée, en remplissant les champs prévus. Pour faire en sorte que toutes ces actions ont conduit au résultat souhaité, il est nécessaire de les mettre en œuvre strictement de la première à la dernière. Alors seulement, la procédure sera considérée comme un succès. Dans le cas contraire, la transaction est annulée.

Ces processus peuvent être soit automatique, qui est fourni dans le système, et manuellement par le développeur pour terminer après l'achat du produit fini afin de rendre ce dernier plus facile pour les utilisateurs d'une entreprise particulière. En outre, le mode automatique, lorsque le comportement du système est régi par un mécanisme intégré, les transactions peuvent être convertis pour fonctionner.

Transactions dans le 1C: les subtilités du langage intégré

Qu'est-ce qu'une transaction dans le cas général, nous pouvons comprendre. Mais puisque chaque entreprise engagée dans le développement de logiciels, ce qui en fait leur propre chemin, il y a certaines différences entre les transactions en général et les transactions dans 1C en particulier. Par exemple, le imbriquée (transaction dans la transaction) ne sont pas pris en charge 1C.

Du point de vue des opérateurs de syntaxe intégrés dans un langage assez simple. Démarrage du processus est annoncé par un BeginTransaction de procédure spéciale (). procédure ZafiksirovatTranzaktsiyu () est utilisée pour enregistrer les modifications lors de l'exécution des actions. Si dans le processus échoue, il est possible OtmenitTranzaktsiyu () pour annuler les modifications engagées.

Pourquoi utiliser une transaction est préférable? Comme le code dans ces procédures est beaucoup plus rapide. Il est à cela et cherche tout programmeur. La différence de vitesse ne peut pas être aussi visible si les utilisateurs 1C dans les bureaux 1-2 employés, mais il est impossible de ne pas se sentir en matière de départements entiers, en même temps pour effectuer divers travaux dans ce programme.

pièges

En plus des avantages évidents, consistant en une augmentation importante de la vitesse de lecture et d' enregistrement lorsque vous travaillez avec la base de données, dans une transaction il y a un moins. Revenons à l'exemple précédent de la vie. Qu'est-ce qu'une transaction qui ne se fait pas par une seule personne, et toute la famille? Tout le monde tente d'entrer dans la salle de bain pour se laver avant toute la foule dans la cuisine, car il est temps de petit-déjeuner. Par conséquent, les membres de la famille ne sont pas satisfaits les uns aux autres. Au mieux, il est juste un mauvais début de la journée, et au pire – être en retard pour le travail, une réprimande de ses supérieurs, à contrecarrent.

Dans le programme, il est le même. Si tous les utilisateurs commenceront à modifier les données en même temps dans le même document, qui est considéré comme la dernière version? Quelles sont les données utilisées pour sauver? Afin d'éviter une telle confusion, il existe un mécanisme de verrouillage. Cela signifie que si un utilisateur travaille sur un document, le deuxième placé dans la file d'attente virtuelle et attend. Après avoir réussi ou annuler le document peut ne pas l'utilisateur suivant.

Ou peut-être pas serrures contrôlée?

Le concept d'une transaction ne peut pas être pleinement pris en compte sans problème de serrures excessives. Quel est le plus grand mal: l'absence de verrous processus menant à anormal de lecture et d'écriture avec des résultats erronés à la sortie, ou trop, le fonctionnement de l'inhibition de l'ensemble de l'entreprise?

La meilleure solution – serrures contrôlée, qui sont la moyenne d'or. Un programmeur compétent peut personnaliser un mécanisme existant aux besoins de l'organisation afin que les documents réellement importants sont traités dans la file d'attente de commande. Selon les mêmes éléments de configuration, qui ne nécessitent pas de verrous, vous pouvez autoriser l'édition libre.

Ainsi, une analyse rapide des transactions et la bonne attitude à verrouiller permet d'utiliser pleinement la flexibilité du système « 1C: Enterprise » et d'optimiser le fonctionnement de base de données, ce qui minimise les pertes de temps.

Quelles sont les causes de verrouillage excessif?

La question est rhétorique. Si nécessaire retirer le verrou, il y aura confusion et le chaos. La base de données recueillera les données erronées en raison des soldes de radiation simultanées, ou, à l'inverse, l'accumulation d'actifs. Mais les conséquences d'un tel genre qui sortira à la fois. La première fois, le travail va rapidement, créant l'illusion de la justesse du choix de l'échec de verrouillage. D'autre part, un grand nombre de verrous mal conçus provoquant immédiatement les messages d'erreur. « Impossible de terminer la transaction sécurisée » – met en garde contre notre système. Qu'est-ce que cela signifie? Deux transactions mutuellement bloquées à l'autre de sorte que nul ne peut soit compléter le travail ou pour effectuer l'annulation. Le cercle vicieux de la transaction « mort » se bloque dans la base de données avant la détection, ce qui réduit considérablement les performances du système.

Non nécessaires des actions d'annulation de la chirurgie pour augmenter le nombre d'entrées dans le journal. En outre, un tel système n'est pas viable, car encore plus l'utilisateur enterre simplement sous le poids des verrous « morts ». Temps d'arrêt est toujours en croissance. Comment éviter de telles situations?

Niveaux d'isolement – une façon de ne pas s'échouer

Outre le fait qu'une telle opération, nous avons mentionné les pièges. En continuant l'analogie, nous pouvons affirmer avec confiance que la variation du niveau de la serrure – un outil fiable d'un pilote sur un voyage à la mer 1C. Il y a deux niveaux d'isolement: « en lecture seule, pas d'entrée » et « pas d'enregistrement ou de lecture. » Dans la sélection du mode automatique ne sont pas disponibles. Mais il suffit de traduire l'application en mode géré, et vous pouvez imposer des restrictions « intelligentes », le choix non seulement des documents importants, mais aussi leur attribuant le niveau d'isolation approprié.

Cependant, le travail bien organisé – est, surtout, la prévention des situations d'urgence, et non seulement en temps opportun liquidation a déjà eu des échecs. administrateur de base de données Assistant fournira des systèmes de traitement des transactions. Il est sur la base de ces données, comment était toute opération sur le système, si elles ont été accomplies ou annulées avec succès, il est possible de prédire le comportement ultérieur du système et prévenir les menaces potentielles.

Un résumé général

Nous avons eu affaire à la définition de la transaction, considérée comme un organigramme du processus de l'intérieur, a pris connaissance des différentes façons de réglementer les opérations au sein d'une base d'information unique.

Comme le montre, le mécanisme est pas facile, mais facile à comprendre et à mieux répondre aux administrateurs et aux programmeurs de bases de données, même novices. les méthodes de contrôle ne peuvent pas encore être apporté à la perfection, et pour éviter des problèmes en mode automatique, aussi, est impossible, mais, néanmoins, à chaque nouvelle version de la vie de développeur de logiciels devient plus facile.