Overview of Internet Information Services 5.0 |
Component Services is a transaction processing system for developing, deploying, and managing distributed server applications. Simply put, a transaction is any business operation in your daily life, such as exchanging money for goods or services.
In software, a transaction is an operation (initiated by an application) that succeeds or fails as a whole, even if the operation involves many steps (for example, ordering, checking inventory, and billing). Transaction processing is crucial for distributed business applications that require accuracy, data consistency, and security.
The following list shows examples of some of the built-in and installable Component Services applications:
A transaction changes a set of data from one state to another. For example, if you withdraw money from your bank account, your balance changes to reflect the transaction. For a transaction to work correctly, it must have what are known as the ACID (Atomicity, Consistency, Isolation, and Durability) properties:
All of these properties ensure that a transaction does not create problematic changes to data between the time the transaction begins and the time it must commit. Also, these properties simplify cleanup and error handling when updating databases and other resources.
With Component Services you can work with transactions effectively, and even package components within transactions. You can develop a transactional application for a single user, and then use simple scripting commands to scale it for use in a production environment. Component Services components are activated when needed and deactivated when not, thereby conserving server resources and increasing the number of users who can run your application concurrently. Component Services applications can also be run in separate memory spaces so that their operational status will not affect other applications, a function called process isolation.
Component Services is much more than a transaction-management server. It is also an object manager for distributed network objects and environments. In fact, it defines a programming model, and provides a run-time environment and a graphical administration tool for managing enterprise applications. Specifically, it can do the following:
The figure below shows the graphical interface of the Component Services snap-in for MMC and displays installed packages. Through this interface, you can add or delete packages or configure Component Services as needed.