September 25, 2006
ESB's still over-stepping their bounds
After some time off, I return to the wired world and find that things just keep getting better and better. Take, for example, Mohammad Akif's recent posting on Microsoft ESB strategy. While knocking other vendors for trumping up bogus offerings, his discussion of what an ESB can/should support goes against many of the principles of service orientation.
One main thing that gets me every time is the inter-changable use of the terms "bus" and "broker". They are different architectural patterns! An ESB should NOT, either "at the very minimum" or at all, support "Brokered Communication". The idea of necessarily having a single physical point through which all communications go through, be it clustered for high availability or not, is not the implementation of the Bus architectural pattern. Period. I know that that's how Microsoft implemented BizTalk. It still doesn't make it a bus. Topic-based routing, which, when you implement a variation of the DataType Channel pattern, can bring you to a one-to-one mapping of channels to autonomous components.
And then there's message transformation. Has there ever been a more transparent defective gene inherited from the EAI beginnings? SOA is not about hooking together poorly design, hastily shipped legacy systems. Each service is responsible for its own communications with other services. If it needs to "transform" messages, whatever that means, it should do it by itself. If there's anything going on, we're talking about contextual translation - think of those guys in the back rows of the UN, only doing a better job. A service needs to understand the semantic meaning of a message and assimilate the data it brings into the service's own internal domain. No intermediary can, or should, help there.
One parting note: I don't want to come off as attacking Mohammed specifically here. If ever there was an architect who had a more balanced point of view at Microsoft, I haven't met or read them yet :) Look for more discussion around Mo's blog post in the coming days.
Posted by Udi Dahan at 03:48 PM Permalink
|