Geeks With Blogs


INauseous() Shawn Cicoria - Solution Architect, Craftsman and Artisan - INauseous() - Main Blog Here:

In my (along with Chris Peiris) MSDN article (Integrating WCF Services with COM+), there were a few things I wanted to change, but given the edit review cycle, I decided to wait until it was published and just blog about some additional concepts.  What follows are just a couple of extra pictures that give a view of how WCF ServiceModel.ComIntegration works in regards to calling COM+ Components from WCF Clients.

Let's take a little step back to COM+ and COM+ Applications.  There are 2 types of COM Applications - Library and Server.  The former is an inprocess hosting of your COM component; the latter is hosted in a server process, generally DllHost, which hosts your library along with controlling activation, recycling, etc.

Based upon the Application type, you have a different choices for hosting the COM+ component.  The implications of each choice impact both performance (additional marshalling), manageability, and accessibility from legacy clients.

COM+ Library Package WCF Integration

The following is a quick view of what's happening with Library Packages and hosting of COM+ Applications.


When you're running the COM+ Integration Wizard from SvcConfigEditor you'll be presented with a single choice as shown below. This translates into a ComSvcConfig switch of /hosting:complus.

What are the implications of this model? Well, it's inprocess so marshalling across process doesn't happen.  Although, all the ComIntegration parts of the framework kick in.  You also have message based activation (it's hosted in IIS/WAS) so there's isn't necessarily a server process running continously.

COM+ Server Package - COM+ Hosted

When you get to Server Applications, you have a couple of options. 

The first is COM+ hosted.  This provides simultaneous access from DCOM and WCF clients.  You then control process lifetime through the COM+ configuration settings - such as run as an NT Service, etc.  You lose message based activation - You think about the process lifetime.

COM+ Server Package - IIS/WAS Hosted

The last option is IIS/WAS hosted Server Application.  This is where you get both the advantage of DCOM & WCF access along with Message Based activation - but at the expense of making a cross process call between IIS/WAS and the Server Package process.

Posted on Monday, August 27, 2007 6:05 PM .NET , WCF (Indigo) | Back to top

Comments on this post: Additional Stuff on Integrating WCF Services with COM+

Comments are closed.
Comments have been closed on this topic.
Copyright © Shawn Cicoria | Powered by: