Article on Choosing Service Implementation Strategy with WCF

Michele recently wrote a lengthy but deliciously thorough article on MSDN (hat tip: Lynn) called Application Deployment Strategies which identifies five core scenarios for using Windows Communication Foundation within a distributed application.  Those scenarios include:

  1. Enterprise web services.   Think secure, interoperable services that may also utilize new-ish WS* standards such as WS-AtomicTransaction and WS-ReliableMessaging.
  2. Web 2.0 services.  These are your POX or REST services with a look at JSON and RSS/ATOM.
  3. Intranet applications.  These services which live inside your own organization may use something like TCP as a transport.  Or, if you’re like my company, even the internal web service standard is SOAP over HTTP.
  4. Queued messaging.  If you have asynchronous or offline messaging needs, you can look at MSMQ with WCF.  She also touches on “pub/sub” scenarios and discussing building ESB-like capabilities.
  5. Workflow services.  If you’re building workflow-based applications using WF, there are considerations for exposing services from those workflows.

For each scenario, Michele nicely calls out the implementation characteristics (e.g. hosting environment, authentication, etc), configuration details, and a set of common questions and answers (e.g. “What other credential types are supported for web services?” or “When should I use a reliable session?”).

The formatting of the article itself makes it a bit tricky to understand which header topic you’re currently under, but, I’m sure you’re smart enough to figure it out.

Technorati Tags: ,

Author: Richard Seroter

Richard Seroter is Director of Outbound Product Management at Google Cloud, with a master’s degree in Engineering from the University of Colorado. He’s also an instructor at Pluralsight, a frequent public speaker, the author of multiple books on software design and development, plus former editor and former 12-time Microsoft MVP for cloud. As Director of Outbound Product Management at Google Cloud, Richard leads a team focused on products that help teams build and run modern software. Richard maintains a regularly updated blog on topics of architecture and solution design and can be found on Twitter as @rseroter.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

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