Using BizTalk Server 2006, multiple tasks can be combined into a unit of work known as a transaction. There are two primary types of transactions supported by BizTalk and they are:
- Atomic
- Long-Running
Scopes:
- A scope is a framework for organizing actions
- Scopes are primarily used for transactional execution of tasks and exception handling
- A scope can contain one or more blocks that has a body and can have any number of exception handling blocks
Atomic Transactions:
- guarantees rollback in the event the transaction process fails
- Used when ACID properties are required
ACID:
- Atomic - the entire transaction will succeed or fail as a whole
- Consistent - provides a consistent view of the data and always leaves the data in a consistent state
- Isolated - all transactions appear as though they are running by themselves
- Durable - once the transaction is committed, the data is recoverable in the event of failure
Long-Running Transactions:
- Are transactions that need to run for extended periods of time
- Are used when ACID properties are not required
- Data is not locked and can be modified
- Individual steps are committed during the time the transaction is being processed
- The transaction itself is not committed until the last statement has been completed
- Within them, they can contain both atomic and other L-R transactions