Service Design Patterns
8%
off

Service Design Patterns : Fundamental Design Solutions for SOAP/WSDL and RESTful Web Services

3.68 (190 ratings by Goodreads)
By (author) 

Free delivery worldwide

Available. Dispatched from the UK in 1 business day
When will my order arrive?

Description

Web services have been used for many years. In this time, developers and architects have encountered a number of recurring design challenges related to their usage, and have learned that certain service design approaches work better than others to solve certain problems.



In Service Design Patterns, Rob Daigneau codifies proven design solutions for web services that follow the REST architectural style or leverage the SOAP/WSDL specifications. This catalogue identifies the fundamental topics in web service design and lists the common design patterns for each topic. All patterns identify the context in which they may be used, explain the constituent design elements, and explore the relative strengths and trade-offs. Code examples are provided to help you better understand how the patterns work but are kept general so that you can see how the solutions may be applied to disparate technologies that will inevitably change in the years to come.



This book will help readers answer the following questions:



How do you create a web service API, what are the common API styles, and when should a particular style be used?
How can clients and web services communicate, and what are the foundations for creating complex conversations in which multiple parties exchange data over extended periods of time?
What are the options for implementing web service logic, and when should a particular approach be used?
How can clients become less coupled to the underlying systems used by a service?
How can information about a web service be discovered?
How can generic functions like authentication, validation, caching, and logging be supported on the client or service?
What changes to a service cause clients to break?
What are the common ways to version a service? How can web services be designed to support the continuing evolution of business logic without forcing clients to constantly upgrade?

This book is an invaluable resource for enterprise architects, solution architects, and developers who use web services to create enterprise IT applications, commercial or open source products, and Software as a Service (SaaS) products that leverage emerging Cloud platforms.
show more

Product details

  • Hardback | 352 pages
  • 187 x 237 x 23mm | 708g
  • Addison-Wesley Educational Publishers Inc
  • New Jersey, United States
  • English
  • 032154420X
  • 9780321544209
  • 183,606

Table of contents

Foreword by Martin Fowler xi

Foreword by Ian Robinson xiii

Preface xv

Acknowledgments xxiii

About the Author xxv





Chapter 1: From Objects to Web Services 1

What Are Web Services? 2

From Local Objects to Distributed Objects 3

Why Use Web Services? 6

Web Service Considerations and Alternatives 7

Services and the Promise of Loose Coupling 9

What about SOA? 10

Summary 11



Chapter 2: Web Service API Styles 13

Introduction 13

Design Considerations for Web Service APIs 14

RPC API 18

Message API 27

Resource API 38



Chapter 3: Client-Service Interactions 51

Introduction 51

Request/Response 54

Request/Acknowledge 59

Media Type Negotiation 70

Linked Service 77



Chapter 4: Request and Response Management 83

Introduction 83

Service Controller 85

Data Transfer Object 94

Request Mapper 109

Response Mapper 122



Chapter 5: Web Service Implementation Styles 131

Introduction 131

Design Considerations for Web Service Implementation 132

Transaction Script 134

Datasource Adapter 137

Operation Script 144

Command Invoker 149

Workflow Connector 156



Chapter 6: Web Service Infrastructures 165

Introduction 165

Service Connector 168

Service Descriptor 175

Asynchronous Response Handler 184

Service Interceptor 195

Idempotent Retry 206

A Quick Review of SOA Infrastructure Patterns 220



Chapter 7: Web Service Evolution 227

Introduction 227

What Causes Breaking Changes? 228

Common Versioning Strategies 232

Single-Message Argument 234

Dataset Amendment 237

Tolerant Reader 243

Consumer-Driven Contracts 250

How the Patterns Promote or Hinder Service Evolution 264



Appendix: Reference to External Patterns 269



Glossary 277

Bibliography 297

Index 303
show more

About Robert Daigneau

Robert Daigneau has more than twenty years of experience designing and implementing applications and products for a broad array of industries, from financial services, to manufacturing, to retail and travel. Rob has served in such prominent positions as Director of Architecture for Monster.com and Manager of Applications Development at Fidelity Investments. Rob has been known to speak at a conference or two.
show more

Rating details

190 ratings
3.68 out of 5 stars
5 22% (41)
4 38% (73)
3 29% (56)
2 8% (15)
1 3% (5)
Book ratings by Goodreads
Goodreads is the world's largest site for readers with over 50 million reviews. We're featuring millions of their reader ratings on our book pages to help you find your new favourite book. Close X