In weniger als einer Minute können Sie mit dem Lesen von Service Design Patterns auf Ihrem Kindle beginnen. Sie haben noch keinen Kindle? Hier kaufen Oder fangen Sie mit einer unserer gratis Kindle Lese-Apps sofort an zu lesen.

An Ihren Kindle oder ein anderes Gerät senden


Kostenlos testen

Jetzt kostenlos reinlesen

An Ihren Kindle oder ein anderes Gerät senden

Jeder kann Kindle Bücher lesen  selbst ohne ein Kindle-Gerät  mit der KOSTENFREIEN Kindle App für Smartphones, Tablets und Computer.
Service Design Patterns: Fundamental Design Solutions for SOAP/WSDL and RESTful Web Services

Service Design Patterns: Fundamental Design Solutions for SOAP/WSDL and RESTful Web Services [Kindle Edition]

Robert Daigneau

Kindle-Preis: EUR 20,90 Inkl. MwSt. und kostenloser drahtloser Lieferung über Amazon Whispernet

Weitere Ausgaben

Amazon-Preis Neu ab Gebraucht ab
Kindle Edition EUR 20,90  
Gebundene Ausgabe EUR 36,95  

Kunden, die diesen Artikel gekauft haben, kauften auch



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.

Über den Autor

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 and Manager of Applications Development at Fidelity Investments. Rob has been known to speak at a conference or two.


  • Format: Kindle Edition
  • Dateigröße: 3441 KB
  • Seitenzahl der Print-Ausgabe: 352 Seiten
  • Gleichzeitige Verwendung von Geräten: Bis zu 5 Geräte gleichzeitig, je nach vom Verlag festgelegter Grenze
  • Verlag: Addison-Wesley Professional; Auflage: 1 (25. Oktober 2011)
  • Verkauf durch: Amazon Media EU S.à r.l.
  • Sprache: Englisch
  • ASIN: B0061LAM5K
  • Text-to-Speech (Vorlesemodus): Aktiviert
  • X-Ray:
  • Amazon Bestseller-Rang: #39.751 Bezahlt in Kindle-Shop (Siehe Top 100 Bezahlt in Kindle-Shop)

  •  Ist der Verkauf dieses Produkts für Sie nicht akzeptabel?

Mehr über den Autor

Entdecken Sie Bücher, lesen Sie über Autoren und mehr

Welche anderen Artikel kaufen Kunden, nachdem sie diesen Artikel angesehen haben?


Es gibt noch keine Kundenrezensionen auf
5 Sterne
4 Sterne
3 Sterne
2 Sterne
1 Sterne
Die hilfreichsten Kundenrezensionen auf (beta) 4.2 von 5 Sternen  29 Rezensionen
34 von 37 Kunden fanden die folgende Rezension hilfreich
5.0 von 5 Sternen A Great Addition to the Martin Fowler Signature Series 12. November 2011
Von T. Anderson - Veröffentlicht auf
Format:Gebundene Ausgabe|Verifizierter Kauf
I have been a fan of the Martin Fowler Signature Series for a long time. This book fit into the series great and filled in a missing link in the series.

One of the things I liked seeing was that the author does not think web services are a silver bullet. Right off the bat he warns that web services should be reserved for situations which out-of-process and cross-machine calls "make sense".

The book is broken down into seven chapters, an appendix, and a nice glossary. The chapters include From Objects to Web Services, Web Service API Styles, Client-Service Interactions, Request and Response Management, Web Service Implementation Styles, Web Service Infrastructures, Web Service Evolution, and an appendix Reference to External Patterns.

I felt the book worked at the right level of abstraction digging into details when needed to shed a deeper light on the subject at hand.

Each chapter contains several related patterns. Each pattern answers a primary question. For example chapter one Web Service API Styles cover the following 3 patterns that answer the question that follows below.

RPC API - How can clients execute remote procedures over HTTP?

Message API - How can clients send commands, notifications, or other information to remote systems over HTTP while avoiding direct coupling to remote procedures?

Resource API - How can a client manipulate data managed by a remote system, avoid direct coupling to remote procedures, and minimize the need for domain-specific APIs?

The other patterns covered in the book include Request/Response, Request/Acknowledge, Media Type Negotiation, Linked Service, Service Controller, Data Transfer Object, Request Mapper, Response Mapper, Transaction Script, Datasource Adapter, Operation Script, Command Invoker, Workflow Connector, Service Connector, Service Descriptor, Asynchronous Response Handler, Service Interceptor, Idempotent Retry, SOA Infrastructures, Breaking Changes, Versioning, Single Message Argument, Dataset Amendment, Tolerant Reader, and Consumer-Driven Contract.

Like the other pattern catalogs the book contains an online catalog of the patterns in the book. Although the online catalog gives you an overview of each pattern, the book contains a lot more detail about each one. I like the online catalogs. I often visit them to spark my memory about the patterns that I have read about in the books.

I like that the book limited its scope to the fundamental patterns relevant to web service design. It does not try to be all encompassing, which I think made it better than if the author had tried to be. The book does not cover enterprise integration patterns, workflow or orchestration, security, event-driven architecture, or choreography. The book does include a nice reference to external patterns in the appendix that provides a summary and where to go for more information.

I think each pattern is explained really well and the examples used do a great job of showing a possible implementation. I liked the end of chapter 7 where the author provides a nice summary about how each pattern hinders or promotes evolution.

The book also includes a nice glossary that provides quick reference to additional information on topics mentioned in the book.

The author does an awesome job of providing examples in different technologies throughout the book. The author uses a nice mixture of .NET and Java technologies. Some of the technologies used are JAX-WS, JAX-RS, JAXB, JSON, XML, Xpath, XSLT, WSDL, DataContractSerializer, XmlSerializer, and WCF. To top it off the author's writing style makes the reading really easy.

All in all I think every architect and developer should have this book on their shelf.
16 von 17 Kunden fanden die folgende Rezension hilfreich
5.0 von 5 Sternen A refreshing read on service design 7. Januar 2012
Von Jeff Bouchard - Veröffentlicht auf
Format:Gebundene Ausgabe|Verifizierter Kauf
I found Service Design Patterns to be a refreshing and well-crafted book. I would expect nothing less from anything accepted into the Fowler series. The author is quite clear from the very beginning that this book is intended to get the reader familiar with the most common approaches for implementing services. At first inspection of this statement, I expected to read lots of problem statements, with pattern definitions, and code samples to follow that mapped directly to SOAP/WSDL and REST. I was pleasantly surprised.

In the pages of the very first chapter this book challenges your standard thought on Service Architecture. Over the years I have asked many colleagues why they think SOA is a superior architecture. Often I have received the response that it reduces complexity, provides loose coupling, and is the most reliable way to allow disparate systems to communicate. Naturally, the next question is, well how are those objectives met? That question tends to put a wrinkle on the face of some of the most seasoned software architects. This book presents those questions, and paints candid responses before you get to page 10.

As you advance through the chapters, the author did a great job at codifying various approaches to web service design in a way that's not specific to any particular technology or specification. The pattern descriptions are easy to read, help the reader understand how to choose between them and the contexts in which to use them. The book provides an easy to reference handbook that classifies the patterns into categories that really make sense, and I think it gives practitioners a very useful vocabulary. Although the title says it's about creating services for SOAP/WSDL and REST, it's not a book about either. I am glad the author took this approach as there is plenty of material on both of these subjects. It might have been helpful for the author to address this up front.

Long story short, this book does a nice job of bridging the gap between Patterns of Enterprise Application and Enterprise Application Architecture. A nice reference book.
34 von 41 Kunden fanden die folgende Rezension hilfreich
3.0 von 5 Sternen Far from an authoritative patterns book 27. Dezember 2011
Von George Jiang - Veröffentlicht auf
Format:Gebundene Ausgabe|Verifizierter Kauf
SUMMARY: This book might have presented some interesting topics and patterns for discussion and debate, but it is far from an authoritative patterns book. It lacks "The Narratives" in PoEAA, while the patterns in it lack the usefulness of those found in EIP.

When I saw this book on the Amazon, I purchased the printed book straight away without having had a quick read of the book, say from a pdf you can download on the Internet, since I really enjoyed reading the other two pattern books in the Martin Fowler series, i.e., Patterns of Enterprise Application Architecture (PoEAA) and Enterprise Integration Patterns (EIP).

It turns out to be a disappointment with this book.

Why? First, with the other two patterns books, in some cases I learned/relearned some core concepts of Enterprise Application or Enterprise Integration, while in other cases I learned some best way to describe what I had already learned from experience. Unfortunately, That has not been the case with this book about SOAP based Web service or REST Web service, except "situations in which out-of-process and cross-machine calls 'make sense'" (page 8).

Second, the patterns in the book generally try to prescribe what industry has been actually doing (often using a different vocabulary). The problem starts when you try to have a more clear understanding of the patterns by reading the examples for the patterns and by trying to make a connection between the patterns and actual SOAP or REST implementation technologies.

Take chapter 2 Web Service API patterns as an example. After reading the three patterns (RPC API, Message API and Resource API), you would think the SOAP document/literal wrapped style or SOAP RPC style are typical implementation of the RPC API pattern, SOAP document/literal bare (unwrapped) or POX as typical implementation of the Message API pattern.

No, not according to the explanation the author gives for the examples.

This is how the author explains the difference between RPC API and Message API (page 31), "Notice that each operation receive a single message argument. This is one very subtle characteristic that differentiates RPC APIs from Message APIs. While the former ..., Message APIs that leverage WSDL are specifically designed to receive a single message argument". But when you turn to page 234, there is actually a Single Message Argument patten for RPC API. What does the author really try to say? Convert RPC APIs to Message APIs by using the Single Message Argument pattern? :-)

Another peculiar in the book is to associate "Service Interface Classes" exclusively with generated service interface code in the contract-first approach (page 179) and describe the code-first approach as "In the Code-First practice, developers create annotated Service Controllers in languages like Java and C#" (page 180). While in reality, for RPC API and Message API, the widely used and more sound practice with code-first is to create annotated "Service Interface Classes" in Java or C# first and then write Service Controller that implements the interface.

There are definitely some good sections/patterns in the book. The sections/patterns I found beneficial are: Resource API (page 38), Request - Acknowledgement (page 59) and Asynchronous Response Handler (page 184).

Overall, this book might have presented some interesting topics and patterns for discussion and debate, but it is far from an authoritative patterns book. It lacks "The Narratives" in PoEAA, while the patterns in it lack the usefulness of those found in EIP.
9 von 10 Kunden fanden die folgende Rezension hilfreich
4.0 von 5 Sternen Formalization of commonly used patterns 5. März 2012
Von Rodrigo De Castro - Veröffentlicht auf
Format:Gebundene Ausgabe
This book discusses many of already commonly used patterns in the industry concerning web services. Each pattern has code examples, and the nicest part is the very reasonable "Considerations" part, which has a list of items to consider before using any of the patterns.

However, if you have been working with web services for some years and have kept up with the changes and trends, you will not necessarily learn much from this book. It's not a long book, so it may be worth your time reading it to fill any gaps in your understanding of web services. For anyone new to web services, though, this is a must read to understand the common patterns before moving on with any trendy way of doing things.

Also, this book is an attempt to formalize many of the patterns that the industry already follows - at least I've seen many companies following them in a way or another. It is good that we all have the same terminology, but on the other hand, it doesn't really get into a lot of details of each pattern, so the the reader needs to research further if s/he wants to deepen his/her knowledge. For each of these patterns - just like in a recipes book - the author gives an example (either in Java or C#) and he was able to keep them short enough but focused on the patterns he wants to show.

From my own experience, these are some patterns or areas I'd include in the book to make it more complete:
- Client-service interaction: long polling. Other than a regular Request/Response, nowadays you see services with long polling, which can be a quite important pattern to use depending on your use case. This pattern has been out for so many years that I surprised not to see it in this book.
- Service Interceptors: this is a really important and probably can be a book of its own, but I'd love to see more patterns on how certain things like exception handling and validation could be done and pros/cons of each approach. Oftentimes these are areas that many service developers get wrong and having patterns here would help steer them into the right direction (rather than realizing later the mistake). The author touches briefly on them from a high level, but there are different ways of the doing the same thing, and it deserved a little more attention in my opinion.
- Operation concerns: typically if one has a service, it tends to be a system that is supposed to be highly available, so service developers want to minimize downtime. For that, you must have a "devops" mindset to know where to put the right logging, where to log metrics for performance, in what places to log errors, how to handle log files. There are so many pieces of advice around operations - but unfortunately I did not find a book on them yet, so developers still need to learn from practice.

Last but not least, note that this book doesn't talk service architecture. It doesn't get into details of how to architect the service, including scalability, reliability, etc. You would need to find other option for that.
3 von 3 Kunden fanden die folgende Rezension hilfreich
1.0 von 5 Sternen A real let-down compared to other books in this series 5. Januar 2014
Von The Wizard of Oz - Veröffentlicht auf
Format:Kindle Edition|Verifizierter Kauf
There's a fair amount of discussion on the SOAP/WSDL topic, but very little practical information that isnt obvious. Compared to other books in this series which are awesome, this one is by far the weakest from a content perspective. The weak content, coupled with the fact that SOAP really is a dead mechanism (I've not done anything other than JSON/REST for the last 5 years) makes this book a bad purchase (at least for the work I'm doing).
Waren diese Rezensionen hilfreich?   Wir wollen von Ihnen hören.

Beliebte Markierungen

 (Was ist das?)
One implication is that web service APIs should usually discourage or even prohibit distributed transactions (i.e., WS-Atomic Transactions). &quote;
Markiert von 13 Kindle-Nutzern
Web services should therefore be reserved for situations in which out-of-process and cross-machine calls make sense. &quote;
Markiert von 13 Kindle-Nutzern
The implication is that web service developers should create APIs that minimize the number of network round-trips required to get work done. &quote;
Markiert von 13 Kindle-Nutzern

Kunden diskutieren

Das Forum zu diesem Produkt
Diskussion Antworten Jüngster Beitrag
Noch keine Diskussionen

Fragen stellen, Meinungen austauschen, Einblicke gewinnen
Neue Diskussion starten
Erster Beitrag:
Eingabe des Log-ins

Kundendiskussionen durchsuchen
Alle Amazon-Diskussionen durchsuchen

Ähnliche Artikel finden