Going beyond SOA, enterprises can gain even greater agility by implementing event-driven architectures (EDAs) that automatically detect and react to significant business events. However, EDA planning and deployment is complex, and even experienced SOA architects and developers need expert guidance. In Event-Driven Architecture, four leading IT innovators present both the theory of EDA and practical, step-by-step guidance to implementing it successfully.
The authors first establish a thorough and workable definition of EDA and explore how EDA can help solve many of today’s most difficult business and IT challenges. You’ll learn how EDAs work, what they can do today, and what they might be able to do as they mature. You’ll learn how to determine whether an EDA approach makes sense in your environment and how to overcome the difficult interoperability and integration issues associated with successful deployment. Finally, the authors present chapter-length case studies demonstrating how both full and partial EDA implementations can deliver exceptional business value. Coverage includes
- How SOA and Web services can power event-driven architectures
- he role of SOA infrastructure, governance, and security in EDA environments
- EDA core components: event consumers and producers, message backbones, Web service transport, and more
- EDA patterns, including simple event processing, event stream processing, and complex event processing
- Designing flexible stateless events that can respond to unpredictable customers, suppliers, and business partners
- Addressing technical and business challenges such as project management and communication
- DA at work: real-world applications across multiple verticals
Review By: Britt E. Cluff
11/20/2009If you need one book on event-driven architecture (EDA) for your library, this is it. This book provides an excellent overview of current industry trends and will be a useful reference for several years to come. The authors start with a good definition of an event-driven architecture, the problems it tries to solves, and related technologies such as Service Oriented Architecture (a prerequisite for a successful EDA). The authors then provide several excellent real-world examples. They are even brave enough to admit that it is not a solution for every business problem.
In order to get the most out of this book, you must have a good understanding of current IT trends, architecture, and terminology. If you are an entry-level or junior developer, some of the concepts will be difficult to fully comprehend. On the other hand, if you are involved in enterprise or solution architecture for a mid-to-large sized business, you will gain invaluable knowledge that is practical across multiple domains.
What is an EDA? In short, an EDA has the ability to detect events and react intelligently. An EDA is loosely or entirely decoupled, uses asynchronous messaging, and is granular at the event level. One of the major shifts required to properly implement an EDA is the shift to event-driven programming. In this model, there are no central controllers dictating sequence flow. Each component listens for events independently and is often unaware of the existence of other components. This provides the enterprise with improved agility when enhancing/modifying systems. This improved agility is one of the major selling points of implementing an EDA. While this shift in development methodology is significant, the rewards far outweigh the investment.
In conclusion, an EDA provides a loosely-coupled environment that enables the development of composite applications. This should enable enterprises to build applications with more agility and improved time to market. The increase re-use of these components allows organizations to change rapidly by plugging new functionality into existing systems with less interruption than was previously possible. If your organization is looking to enhance the value of their IT investment, then read this book and move towards an EDA. I am excited about the possibilities presented in this book and will recommend this book to my colleagues. And I’ll make it a mandatory read for my development staff.