Partager via


Lots de messages transactionnels

Certaines cartes doivent coordonner une transaction externe avec une transaction interne BizTalk Server. Par exemple, l’adaptateur SQL fourni avec BizTalk Server doit coordonner une transaction SQL Server avec une transaction BizTalk Server. Pour ce faire, l’adaptateur doit accéder à l’objet transactionnel BizTalk Server. Un objet de transaction est explicitement créé et associé au lot avant que le lot ne soit envoyé à BizTalk Server. Un lot auquel est associé un objet de transaction est appelé « lot transactionnel ». En fournissant votre propre objet de transaction MSDTC (Microsoft Distributed Transaction Coordinator), vous pouvez obtenir la remise « garantie, une fois et une seule fois » des données dans et hors de BizTalk Server.

Les adaptateurs de base de données transactionnels tels que l'adaptateur SQL peuvent être sujets à des blocages dans la base de données externes en raison de la transaction unique utilisée pour le lot. C'est pour cette raison que la taille de lot pour l'adaptateur SQL est codée en dur à la valeur un.

Si l'adaptateur doit inscrire des gestionnaires de ressources supplémentaires, tels qu'une autre base de données ou MSMQ, au sein de l'étendue de cette transaction, il doit créer une transaction externe explicite et la transmettre au moteur de messagerie. Une transaction externe créée et associée à un lot est appelée « lot transactionnel ». Un adaptateur transactionnel est un adaptateur qui utilise des lots transactionnels en créant explicitement une transaction MSDTC (Microsoft Distributed Transaction Coordinator) externe.

L’une des raisons pour lesquelles un adaptateur fournit BizTalk Server avec une transaction est de s’assurer que BizTalk Server ou le système externe dispose d’un enregistrement des données. Cet enregistrement garantit la livraison unique du message.

Notes

Pour plus d’informations sur MSDTC, consultez Distributed Transaction Coordinator.

FILE est un exemple d'adaptateur qui n'exige pas d'accès à la transaction car les opérations de fichier externes qu'il gère ne sont pas transactionnelles. Dans ce cas, l’adaptateur ne fournit pas d’objet de transaction à BizTalk Server. L’adaptateur SQL, en revanche, interagit avec une base de données SQL et peut avoir des opérations supplémentaires en dehors de ses interactions de message BizTalk Server. Dans ce cas, une transaction MSDTC externe peut être utile pour que l’adaptateur passe à BizTalk Server.

Dans cette section