The Art of Distributed System Design
First Edition September 2007
ISBN 978-0-596-52955-0
Weitere Informationen zu diesem Buch
Inhaltsverzeichnis |
Index |
Probekapitel |
Rezensionen |
Inhaltsverzeichnis
Preface
1. Motivation
1.1 Characteristics of Large Distributed Systems
1.2 The Tale of the Magic Bus
1.3 What We Can Learn from the Tale of the Magic Bus
1.4 History of SOA
1.5 SOA in Five Slides2. SOA
2.1 Definitions of SOA
2.2 SOA Drivers
2.3 SOA Concepts
2.4 SOA Ingredients
2.5 SOA Is Not a Silver Bullet
2.6 SOA Is Not a Specific Technology
2.7 SOA Versus Distributed Objects
2.8 SOA Terminology
2.9 Summary3. Services
3.1 Services
3.2 Interfaces and Contracts
3.3 Additional Service Attributes
3.4 Summary4. Loose Coupling
4.1 The Need for Fault Tolerance
4.2 Forms of Loose Coupling
4.3 Dealing with Loose Coupling
4.4 Summary5. The Enterprise Service Bus
5.1 ESB Responsibilities
5.2 Heterogeneous ESBs
5.3 ESB Differences
5.4 Value-Added ESB Services
5.5 Summary6. Service Classification
6.1 A Fundamental Service Classification
6.2 Basic Services
6.3 Composed Services
6.4 Process Services
6.5 Other Service Classifications
6.6 Technical and Infrastructure Services
6.7 Beyond Services
6.8 Summary7. Business Process Management
7.1 BPM Terminology
7.2 BPM and SOA
7.3 Example for BPM with Services
7.4 Business Process Modeling
7.5 Other Approaches to Identifying Services
7.6 Orchestration Versus Choreography
7.7 A Few More Things to Think About
7.8 Summary8. SOA and the Organization
8.1 Roles and Organizations
8.2 Funding Models
8.3 Summary9. SOA in Context
9.1 SOA-Based Architecture Models
9.2 Dealing with Frontends and Backends
9.3 Summary10. Message Exchange Patterns
10.1 Introduction to MEPs
10.2 Basic MEPs
10.3 More Complicated MEPs
10.4 Dealing with Reliability and Errors
10.5 Dealing with Different MEP Layers
10.6 Event-Driven Architecture
10.7 Summary11. Service Lifecycle
11.1 Services Under Development
11.2 Services in Production
11.3 Summary12. Versioning
12.1 Versioning Requirements
12.2 Domain-Driven Versioning
12.3 Versioning of Data Types
12.4 Configuration-Management-Driven Versioning
12.5 Versioning in Practice
12.6 Summary13. SOA and Performance
13.1 Where Performance Matters
13.2 From Remote Stored Procedures to Services
13.3 Performance and Reusability
13.4 Performance and Backward Compatibility
13.5 Summary14. SOA and Security
14.1 Security Requirements
14.2 Dealing with Security Requirements
14.3 SOA Security in Practice
14.4 Security with XML and Web Services
14.5 When Security Comes into Play
14.6 Summary15. Technical Details
15.1 Services and State
15.2 Idempotency
15.3 Testing and Debugging
15.4 Dealing with Technical Data (Header Data)
15.5 Data Types
15.6 Error Handling
15.7 Summary16. Web Services
16.1 Motivation for Using Web Services
16.2 Fundamental Web Services Standards
16.3 Web Services in Practice
16.4 Closing Notes
16.5 Summary17. Service Management
17.1 The History of Service Brokers
17.2 Repositories and Registries
17.3 Summary18. Model-Driven Service Development
18.1 Generated Service Code
18.2 Modeling Services
18.3 Meta Models in Practice
18.4 Setting Up MDSD Processes
18.5 Tools
18.6 Avoiding Bottlenecks
18.7 Summary19. Establishing SOA and SOA Governance
19.1 Introducing SOA
19.2 SOA Governance
19.3 SOA Step-by-Step
19.4 Other SOA Approaches
19.5 Additional Recommendations
19.6 Summary20. Epilogue
20.1 Is SOA Something New?
20.2 Does SOA Increase Complexity?
20.3 What Are the Key Success Factors for SOA?
20.4 Where Is SOA Not Appropriate?
20.5 Does SOA Replace OOP?References
index
Zurück zu SOA in Practice
