Vous voulez voir cette page en français ? Cliquez ici.


or
Sign in to turn on 1-Click ordering.
More Buying Choices
Have one to sell? Sell yours here
Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions
 
See larger image
 

Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions [Hardcover]

Gregor Hohpe , Bobby Woolf
4.5 out of 5 stars  See all reviews (10 customer reviews)
List Price: CDN$ 67.99
Price: CDN$ 42.83 & this item ships for FREE with Super Saver Shipping. Details
You Save: CDN$ 25.16 (37%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
In Stock.
Ships from and sold by Amazon.ca. Gift-wrap available.
Want it delivered Monday, May 28? Choose One-Day Shipping at checkout.

Frequently Bought Together

Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions + Patterns of Enterprise Application Architecture + Design Patterns: Elements of Reusable Object-Oriented Software
Price For All Three: CDN$ 128.49

Show availability and shipping details

Buy the selected items together
  • In Stock.
    Ships from and sold by Amazon.ca.
    This item ships for FREE with Super Saver Shipping. Details

  • Patterns of Enterprise Application Architecture CDN$ 45.98

    In Stock.
    Ships from and sold by Amazon.ca.
    This item ships for FREE with Super Saver Shipping. Details

  • Design Patterns: Elements of Reusable Object-Oriented Software CDN$ 39.68

    In Stock.
    Ships from and sold by Amazon.ca.
    This item ships for FREE with Super Saver Shipping. Details



Product Details


Product Description

Book Description

Text provides a catalog of sixty-five patterns, with real-world solutions that demonstrate the formidable power of messaging and help you design effective messaging solutions for your enterprise. DLC: Telecommunication--Message processing.

From the Inside Flap

This is a book about enterprise integration using messaging. It does not document any particular technology or product. Rather, it is designed for developers and integrators using a variety of messaging products and technologies, such as

  • Message-oriented middleware (MOM) and EAI suites offered by vendors such as IBM (WebSphere MQ Family), Microsoft (BizTalk), TIBCO, WebMethods, SeeBeyond, Vitria, and others.
  • Java Message Service (JMS) implementations incorporated into commercial and open source J2EE application servers as well as standalone products.
  • Microsoft's Message Queuing (MSMQ), accessible through several APIs, including the System.Messaging libraries in Microsoft .NET.
  • Emerging Web services standards that support asynchronous Web services (for example, WS-ReliableMessaging) and the associated APIs such as Sun Microsystems' Java API for XML Messaging (JAXM) or Microsoft's Web Services Extensions (WSE).
  • Enterprise integration goes beyond creating a single application with a distributed n-tier architecture, which enables a single application to be distributed across several computers. Whereas one tier in a distributed application cannot run by itself, integrated applications are independent programs that can each run by themselves, yet that function by coordinating with each other in a loosely coupled way. Messaging enables multiple applications to exchange data or commands across the network using a "send and forget" approach. This allows the caller to send the information and immediately go on to other work while the information is transmitted by the messaging system. Optionally, the caller can later be notified of the result through a callback. Asynchronous calls and callbacks can make a design more complex than a synchronous approach, but an asynchronous call can be retried until it succeeds, which makes the communication much more reliable. Asynchronous messaging also enables several other advantages, such as throttling of requests and load balancing.

    Who Should Read This Book

    This book is designed to help application developers and system integrators connect applications using message-oriented integration tools:

  • Application architects and developers who design and build complex enterprise applications that need to integrate with other applications. We assume that you're developing your applications using a modern enterprise application platform such as the Java 2 Platform, Enterprise Edition (J2EE), or the Microsoft .NET Framework. This book will help you connect the application to a messaging layer and exchange information with other applications. This book focuses on the integration of applications, not on building applications; for that, we refer you to Patterns of Enterprise Application Architecture by Martin Fowler.
  • Integration architects and developers who design and build integration solutions connecting packaged or custom applications. Most readers in this group will have experience with one of the many commercial integration tools like IBM WebSphere MQ, TIBCO, WebMethods, SeeBeyond, or Vitria, which incorporate many of the patterns presented in this book. This book helps you understand the underlying concepts and make confident design decisions using a vendor-independent vocabulary.
  • Enterprise architects who have to maintain the "big picture" view of the software and hardware assets in an enterprise. This book presents a consistent vocabulary and graphical notation to describe large-scale integration solutions that may span many technologies or point solutions. This language is also a key enabler for efficient communication between the enterprise architect and the integration and application architects and developers.
  • What You Will Learn

    This book does not attempt to make a business case for enterprise application integration; the focus is on how to make it work. You will learn how to integrate enterprise applications by understanding the following:

  • The advantages and limitations of asynchronous messaging as compared to other integration techniques.
  • How to determine the message channels your applications will need, how to control whether multiple consumers can receive the same message, and how to handle invalid messages.
  • When to send a message, what it should contain, and how to use special message properties.
  • How to route a message to its ultimate destination even when the sender does not know where that is.
  • How to convert messages when the sender and receiver do not agree on a common format.
  • How to design the code that connects an application to the messaging system.
  • How to manage and monitor a messaging system once it's in use as part of the enterprise.
  • What This Book Does Not Cover

    We believe that any book sporting the word "enterprise" in the title is likely to fall into one of three categories. First, the book might attempt to cover the whole breadth of the subject matter but is forced to stop short of detailed guidance on how to implement actual solutions. Second, the book might provide specific hands-on guidance on the development of actual solutions but is forced to constrain the scope of the subject area it addresses. Third, the book might attempt to do both but is likely never to be finished or else to be published so late as to be irrelevant. We opted for the second choice and hopefully created a book that helps people create better integration solutions even though we had to limit the scope of the book. Topics that we would have loved to discuss but had to exclude in order not to fall into the category-three trap include security, complex data mapping, workflow, rule engines, scalability and robustness, and distributed transaction processing (XA, Tuxedo, and the like). We chose asynchronous messaging as the emphasis for this book because it is full of interesting design issues and trade-offs, and provides a clean abstraction from the many implementations provided by various integration vendors.

    This book is also not a tutorial on a specific messaging or middleware technology. To highlight the wide applicability of the concepts presented in this book, we included examples based on a number of different technologies, such as JMS, MSMQ, TIBCO, BizTalk, and XSL. However, we focus on the design decisions and trade-offs as opposed to the specifics of the tool. If you are interested in learning more about any of these specific technologies, please refer to one of the books referenced in the bibliography or to one of the many online resources.

    How This Book Is Organized

    As the title suggests, the majority of this book consists of a collection of patterns. Patterns are a proven way to capture experts' knowledge in fields where there are no simple "one size fits all" answers, such as application architecture, object-oriented design, or integration solutions based on asynchronous messaging architectures.

    Each pattern poses a specific design problem, discusses the considerations surrounding the problem, and presents an elegant solution that balances the various forces or drivers. In most cases, the solution is not the first approach that comes to mind, but one that has evolved through actual use over time. As a result, each pattern incorporates the experience base that senior integration developers and architects have gained by repeatedly building solutions and learning from their mistakes. This implies that we did not "invent" the patterns in this book; patterns are not invented, but rather discovered and observed from actual practice in the field.

    Because patterns are harvested from practitioners' actual use, chances are that if you have been working with enterprise integration tools and asynchronous messaging architectures for some time, many of the patterns in this book will seem familiar to you. Yet, even if you already recognize most of these patterns, there is still value in reviewing this book. This book should validate your hard-earned understanding of how to use messaging while documenting details of the solutions and relationships between them of which you might not have been aware. It also gives you a consolidated reference to help you pass your knowledge effectively to less-experienced colleagues. Finally, the pattern names give you a common vocabulary to efficiently discuss integration design alternatives with your peers.

    The patterns in this book apply to a variety of programming languages and platforms. This means that a pattern is not a cut-and-paste snippet of code, but you have to realize a pattern to your specific environment. To make this translation easier, we added a variety of examples that show different ways of implementing patterns using popular technologies such as JMS, MSMQ, TIBCO, BizTalk, XSL, and others. We also included a few larger examples to demonstrate how multiple patterns play together to form a cohesive solution.

    Integrating multiple applications using an asynchronous messaging architecture is a challenging and interesting field. We hope you enjoy reading this book as much as we did writing it.

    About the Cover Picture

    The common theme for books in the Martin Fowler Signature Series is a picture of a bridge. In some sense we lucked out, because what theme would make a better match for a book on integration? For thousands of years, bridges have helped connect people from different shores, mountains, and sides of the road.

    We selected a picture of the Taiko-bashi Bridge at the Sumiyoshi-taisha Shrine in Osaka, Japan, for its simple elegance and beauty. As a Shinto shrine dedicated to the guardian deity for sailors, it was originally erected next to the water. Interestingly, land reclamation has pushed the water away so that the shrine today stands almost three miles inland. Some three million people visit this shrine at the beginning of a new year.


    Suggested Tags from Similar Products

     (What's this?)
    Be the first one to add a relevant tag (keyword that's strongly related to this product)
     
    (1)
    (1)

    Your tags: Add your first tag
     

    What Other Items Do Customers Buy After Viewing This Item?


     

    Customer Reviews

    10 Reviews
    5 star:
     (8)
    4 star:
     (1)
    3 star:    (0)
    2 star:    (0)
    1 star:
     (1)
     
     
     
     
     
    Average Customer Review
    4.5 out of 5 stars (10 customer reviews)
     
     
     
     
    Share your thoughts with other customers:
    Most helpful customer reviews

    5.0 out of 5 stars Architects guide, July 11 2004
    This review is from: Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions (Hardcover)
    Overall I am quite impressed with the quality of this book. The authors took a great look at the patterns involved in messaging architectures as traditionally practiced in EAI applications. If you are an experienced architect, you will find the patterns applied to many enterprise applications. If you don't have a few large-scale type projects under your belt, you won't think many of the suggestions are useful, applicable, or even necessary. If you do, though, reading this book will be well worth your time.
    Help other customers find the most helpful reviews 
    Was this review helpful to you? Yes No


    5.0 out of 5 stars The best technical book of 2004, July 4 2004
    By 
    David Bridgeland (Sterling, VA USA) - See all my reviews
    (REAL NAME)   
    This review is from: Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions (Hardcover)
    I had been waiting for this book for several years. There are many good books on software architecture using synchronous communication, but nothing on asynchronous communication --- the typical scheme when connecting existing applications. This is surprising since the underlying products (MQ, MSMQ, WebMethods, Vitria, etc.) have been around for a while, some for more than 10 years, and the techniques have become increasingly well understood by the practitioners. There are even some books on the individual products --- several on MQ for example --- but nothing more general about how to use messaging, message routing, and message transformation to build a larger system.

    This is the book I had been waiting for. Furthermore the authors have avoided the usual three pitfalls of technical books: it is well organized, it well written, and it is deep treatment, not at all superficial.

    The book is organized into 65 patterns (in the manner of the classic _Design Patterns_). Each pattern shows one typical problem in integrating applications, and how it is solved. Each pattern gives enough implementation details so it is clear how it would work, and an example or two so it is clear how it works in practice. For example the Message Expiration pattern addresses the problem of "How can a sender of a message indicate when a message should be considered stale and thus shouldn't be processed?"

    The writing in this book is clear. For example "A Message Expiration is like the expiration date on a milk carton. After that date, you shouldn't drink the milk." The authors have also invented icons for each of their patterns. Their icon language allows a integration architecture to be visuallized in a way that UML does not provide.

    Amongst the 11 pattern-describing chapters are 3 "interludes", chapter-length examples that explain a problem, show how patterns can combined to solve it, and then provide implementations in different technologies (JMS, .Net, TIBCO, MSMQ, etc.).

    My only beef with this book is that it is long and dense: almost 700 pages. I bought it in late December 2003 and I am only finishing it now. But it is hard to say what should have been cut. Certainly none of the patterns are unnecessary, and the decription of each feels like about the right length. The interludes are also useful for seeing how the patterns fit together. So maybe this book just needs to be 700 pages.

    Help other customers find the most helpful reviews 
    Was this review helpful to you? Yes No


    4.0 out of 5 stars Great Message Pattern Language, Mar 29 2004
    By 
    Ray Ye (Dallas, Tx) - See all my reviews
    (REAL NAME)   
    This review is from: Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions (Hardcover)
    This a book about enterprise integration solutions, authors claim that they are technology neutral, it is true. In the examples and implementations, they chose 3 most popular messaging frameworks to illustrate the patterns. However, they are pretty biased toward messaging as the "better" solution to enterprise integration strategy. It may have a lot of edges over the other approaches, sometimes it is just easy to use a simple wrapper/facade to do the integration. But I guess authors really intend to push their messaging solutions as the subtitle indicates.

    Having said that, this is an excellent book of message pattern language, which I believe is the first one introducing the interesting topic. The books touches from the architectural patterns, e.g., messaging bus, pipe and filters, to common design patterns, e.g., publish/subscribe, request/reply, to some patterns that most MOMs provide as integrated solutions, e.g., durable subscriber, message filter, message expiration etc. With all these patterns at hand, a system architect would be able to craft a messaging pattern-oriented enterprise integration architecture by applying the appropriate patterns compositely.

    The book would be better if authors describe some patterns implementation in more detail. E.g., it would be interesting to see how the message expiration is implemented, does the message contain a timer or the message channel monitor each individual message from start up? How does the channel interact with the message and check the expiry? Guaranteed delivery is another example. I know most of these implementation details only interest MOM developers, whereas pattern users are only interested in how and when to apply the patterns, but now that the book is about patterns themselves, implementation details would be appreciated.

    Since all the patterns introduced in the book form a messaging pattern language, knowing each pattern's strength and limitation under the context, scope and different forces, and how it interacts with other patterns to form a bigger(composite) pattern are essential to grasp the pattern language. A collaboration diagram to show each pattern's transition/migration/composition to each other would be helpful.

    Help other customers find the most helpful reviews 
    Was this review helpful to you? Yes No

    Share your thoughts with other customers: Create your own review
    Want to see more reviews on this item?
     Go to Amazon.com to see all 44 reviews  4.7 out of 5 stars 
     
     
    Most recent customer reviews








    Only search this product's reviews



    Listmania!


    Look for similar items by category


    Look for similar items by subject


    Feedback


    Amazon.ca Privacy Statement Amazon.ca Shipping Information Amazon.ca Returns & Exchanges