This is the first in a series of simple posts about using Actor Model to implement the EAI Patterns. The patterns are from the book Enterprise Integration Patterns, by Gregor Hohpe and Bobby Woolf. Information about the book and the patterns are found at the previously referenced link.
When I say Actor Model I am not discussing the general use of messaging, as in Pub-Sub or Queues, or a SOAP request for that matter. Of course ultimately you can use the Actor Model in that way, and you can find enough similarities to prove that using those approaches to service design and implementation qualifies them as Actor Model. In fact, even Carl Hewitt explains that you can model email systems and Web service endpoints as Actor systems.
On the other hand, some toolkits bring you much closer to the use of Actor Model as originally specified by Carl Hewitt and his team. This is the use of Actor Model that I am emphasizing, and the specific toolkits I am using are those that support Actor Model in that way. So I will be talking about Akka and my own Actor Model toolkit. Actors as supported by such an Actor Model toolkit will have the following basic characteristics:
- Communication via Direct Asynchronous Messaging
- Lock Free Concurrency
- Share Nothing
- Parallelism (yes, even the potential for Parallelism)
This post is about Request-Reply. It’s quite simple and straightforward to implement using Actor Model.
. . .
The full text is now available as part of my book Reactive Enterprise with Actor Model on Safari Books Online.