Shadowfax

Shadowfax is an interesting set of “Reference Solution” that is being worked on by the PAG group at Microsoft. I think this would be a very important piece in the whole SOA (Service Oriented Architecture) space, with getting bits out the door in a quick and reusable fashion. Basically this is a similar implementation of Indigo in todays technologies (i.e. those that are currently shipping such as .NET). This “unifies” the four messaging options you have today:

  1. Web Services
  2. Remoting
  3. MSMQ
  4. DCOM

Per Microsoft here are the goals for this are:

  1. Enable separation between stable service interfaces and possibly volatile and unreliable Service Dispatching (Without the framework one would have to think about how to expose the service first. With the framework one can build a service first and then think about how to expose it.)
  2. Make it possible for developers to keep aspect-like logic, for example monitoring or auditing logic, separate from Service Dispatching logic.
  3. Provide a single, consistent mode of handling service requests regardless of the transport transport on which they came.
  4. Help developers build robust services that can be accessed by client applications through multiple transports.

This is how is translates to Architecture speak:

  1. Provide support for sending service request and receiving service responses over multiple transports (such as Web Services or message queue transport)
  2. Provide multiple, configurable means of dispatching Service Dispatchings.
  3. Provide multiple, configurable means of passing requests to and receiving responses form Service Dispatchings.
  4. Provide configurable means of “inserting” aspect-like logic into request and response flow.
  5. Provide simple means of integration with BizTalk orchestration

And the constraints within which this has to operate are:

  • The architecture must be logically consistent with the future direction of relevant Microsoft products (Indigo and BizTalk in particular).
  • The implementation should use the .NET Framework.  To be deployed, the architecture must only require the Windows platform with the .NET Framework distributable installed.
  • The development and modifications of the framework should be done with VS 2003 Enterprise Version.

Again, I think this would be quite a significant advantage before Indigo ships. I just started playing with this, so look out for more details on this in the next few weeks.

Published by

Amit Bahree

This blog is my personal blog and while it does reflect my experiences in my professional life, this is just my thoughts. Most of the entries are technical though sometimes they can vary from the wacky to even political – however that is quite rare. Quite often, I have been asked what’s up with the “gibberish” and the funny title of the blog? Some people even going the extra step to say that, this is a virus that infected their system (ahem) well. [:D] It actually is quite simple, and if you have still not figured out then check out this link – whats in a name?

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.