Today I was at the pre-conference part of TechEd in Orlando. I attended the WCF/SOA overview by Juval Lowy and picked up a few interesting details. In my personal learning I have been working through the Learning WCF book by that Indigo girl (http://www.oreilly.com/catalog/9780596101626/) and have been working through it on my train ride into Chicago. Lowy has another book in O’Reilly series and I found the content of his talk today to be roughly parallel to the content of the Learning WCF book. The Learning WCF book targets a lower audience level than the Programming WCF services book that Lowy has (http://www.oreilly.com/catalog/9780596526993/index.html) but I wanted to have a better foundation on WCF. Ok, enough of the rambling.
So a few topics on WCF that I thought were most interesting. Lowy talked about the DurableService attribute, which can be added to a WCF service implementation to provide some of the persistence typically associated with WF in .NET 3.5. This is a closely related feature to BizTalk’s concept of orchestration dehydration. For more information on DurableService see (http://weblogs.asp.net/gsusx/archive/2007/06/14/orcas-durable-services.aspx – unfortunately is an Orcas post so no guarantees). DurableService enables a WCF service to function as a long-running process, similar to BizTalk long-running transactions. It is very interesting to see a couple of different options available for service persistence and the flexibility to choose to either use this via WCF or WF or both. In BizTalk design you might typically use a tier of servers for processing messages received through adapters, and this capability of separating the service persistence in either WCF or WF means that it will be possible to separate a service across more than one physical server and have WCF used on a separate physical tier while maintaining process persistence.
Here at TechEd there are many hands-on-labs (HOL) available running concurrently while the other conference sessions are occuring so if you want to dive into something you can jump right in. I was looking at a HOL on Developing Workflow Services via VS 2008. This showcased further .NET 3.5 technology which goes a long way towards replacing the business process functionality of BizTalk. I was amazed that it is possible to expose a WF process as a WCF service and it was very interesting to hear that when a WF sequential process calls a WF state-machine, you can use correlation to coordinate messages between the processes. If you are experienced on BizTalk you can slowly see Microsoft introduce technologies that will eventually replace BizTalk functionality and its interesting determining which ones match BizTalk functions. One area I have been wondering about until today was which WF or WCF technology would handle message correlation for the various forms of message exchange patterns in which correlation is required. This HOL shows how to handle service correlation which should match the BizTalk functionality as long as the integration partner exposes a WCF endpoint.
Overall, it has been very interesting today. I will be continuing to post throughout my time here so check back later! Now its time for me to get some food. Bye!