Key Features
Complete revision of the classic "non mathematical" transaction processing reference for systems professionals.
Updated to focus on the needs of transaction processing via the Internet-- the main focus of business data processing investments, via web application servers, SOA, and important new TP standards.
Retains the practical, non-mathematical, but thorough conceptual basis of the first edition.
Description
Principles of Transaction Processing is a clear, concise guide for anyone involved in developing applications, evaluating products, designing systems, or engineering products. This book provides an understanding of the internals of transaction processing systems, describing how they work and how best to use them. It includes the architecture of Web Application Servers, transactional communications paradigms, and mechanisms for recovering from transaction and system failures.
The use of transaction processing systems has changed in the years since publication of the first edition. Electronic commerce has become a major focus for business data processing investments, from banking and stock purchase on the web, to eBay auctions, to corporate database management. New standards, new technology and products, and new languages allow web services and SOA to become the leading style of design for enterprise applications. And with the help of this book and its rich examples, you will be able to produce the state-of-the-art applications discussed within.
For more information check out Eric Newcomer's blog:
http://ericnewcomer.wordpress.com/2009/05/15/what-we-learned-writing-the-second-edition-of-the-tp-book/
Readership
systems professionals: IT application programmers that build TP applications for use in IT or on web sites; application analysts who design applications for deployment on TP systems; and product developers
Principles of Transaction Processing, 2nd Edition
1. Introduction
1.1 The Basics
1.2 TP System Architecture
1.3 Atomicity, Consistency, Isolation, and Durability
1.4 Two-Phase Commit
1.5 Transaction Processing Performance
1.6 Availability
1.7 Styles of Systems
1.8 TP System Configurations
1.9 Summary
2. Transaction Processing Abstractions
2.1 Introduction
2.2 Transactions
2.3 Processes and Threads
2.4 Remote Procedure Call
2.5 Shared State
2.6 Scalability
2.7 Summary
3. TP Application Architecture
3.1 Introduction
3.2 Application Architecture
3.3 Front-End Program
3.4 Request Controller
3.5 Transaction Servers
3.6 Transactional middleware
3.7 Database Servers vs. Transactional Middleware
3.8 Summary
4. Queued Transaction Processing
4.1 Why Use Queues?
4.2 The Queued Transaction Processing Model
4.3 Client Recovery
4.4 Handling Non-Undo-able Operations
4.5 The Queue Manager
4.6 Publish-Subscribe
4.7 Other Message-Oriented Middleware
4.8 Queuing Products and Standards
4.9 Summary
5. Business Process Management
5.1 Introduction
5.2 Business Process Definition
5.3 Business Process Execution
5.4 Transactional Properties
5.5 Making Process State Durable
5.6 Other Models of Business Processes
5.7 Products and Standards
5.8 Summary
6. Locking
6.1 Introduction
6.2 Implementation
6.3 Deadlocks
6.4 Performance
6.5 Hot Spots
6.6 Query-Update Problems
6.7 Avoiding Phantoms
6.8 Optimistic Concurrency Control
6.9 B-Tree Locking
6.10 Multigranularity Locking
6.11 Locking Nested Transactions
6.12 Summary
6.13 Appendix - Basic Serializability Theory
7. System Recovery
7.1 Causes of System Failure
7.2 A Model for System Recovery
7.3 Introduction to Database Recovery
7.4 The System Model
7.5 Database Recovery Manager
7.6 Shadow-Paging Algorithm
7.7 Log-Based Database Recovery Algorithms
7.8 Optimizing Restart in Log-Based Algorithms
7.9 Media Recovery
7.10 Summary
8. Two-Phase Commit
8.1 Introduction
8.2 The Two-Phase Commit Protocol
8.3 Failure Handling
8.4 Optimizations and Variations
8.5 Process Structuring
8.6 User Checklist
8.7 Summary
9. Replication
9.1 Introduction
9.2 Replicated Servers
9.3 Synchronizing Updates to Replicated Data
9.4 Single-Master Primary-Copy Replication
9.5 Multi-Master Replication
9.6 Other Replication Techniques
9.7 Data Sharing Systems
9.8 Summary
10. Transactional Middleware Products and Standards
10.1 Introduction
10.2 Web Browser Front-End Programs
10.3 .NET Framework
10.4 Java Enterprise Edition
10.5 Service Oriented Architecture
10.6 Persistence Abstraction Mechanisms
10.7 Legacy TP Monitors
10.8 TP Standards
10.9 Summary
11. Future Trends
11.1 Introduction
11.2 Cloud Computing
11.3 Scalable Distributed Computing
11.4 Memory Technology
11.5 Streams and Event Processing
11.6 Summary