Thursday, March 15, 2007

Service Oriented Communication and WCF (speaker Christian Weyer)

Usually strange or tall people give great presentations, don’t ask me why.

Just to name a few strange ones: Erik Meijer and Don Box.

And for some tall ones: Mark Russonovich and Christian Weyer.

By the way, in no way does strange mean something negative but literally “out of the ordinary”.

Christian insisted that the track was not called “SOA and WCF”, because of all the vagueness that is associated with SOA whereas he was going to give a deeply technical presentation over what WCF really is and what it is trying to provide or accomplish.

First of, WCF is really two things namely a runtime and a programming model.

He continued by explaining your WCF ABC being Address, Binding, and Contract.

The types of contracts he talked about were service contracts, operation contracts, data contracts, message contracts and last but not least, fault contracts.

He went on to provide some common pitfalls like mutually excluding service configurations such as session-less services that want to use a basic HTTP binding and some more.

One of the tips he gave for well-behaving services without unexpected behavior or permissions was to run service hosts under a non-admin process. That can be complex if they need to run using a kernel-level service like http.sys but nonetheless it is very important that you do. It will also make it easier to run well on Windows Vista and Codename Longhorn Server.

The presentation ended with a good question from the audience about how to test services. Christian replied that from his experience, unit testing code generated by SVCUTIL or using channel factories worked best for him.

Again, a really informative and rewarding session.

No comments: