Finding the sweet spot
So I’ve being playing with Indigo (WCF) since Beta 1 and now Beta 2 with its go live license. And I have to say I’m impressed with its simplicity and extensibility. Its going to reset the bar for developing the next generation of distributed applications.
You have all the major things like adhering to standards, good interoperability with the likes of Java via its implementation of the WS-* specification and critically its the unification of all the existing (ASMX, COM+, Remoting, MSMQ) .NET technologies for building distributed applicaions.
Its interesting so see some of the things that had to be put in place for all this to work. One lesser known one that caught my eye was about improvements to IIS in handling requests at the kernel level for performance and scalability reasons. But for me the real killer point is it allows multiple applications to listen on one IP port. Heres a link to a good article explaining what was done and why.
In terms of simplicitly one of the test apps I developed was a system so that the client talks to a service via an MSMQ so if the service is not running for some reason the client can still work away and when the service does start up it will start processing the messages in the queue in order. This type of work has now just become plain easy, all you need to do is change the config file and you can point the client to either the actual service or the MSMQ.
With respect to interoperability over the past year the work I’ve done has invloved ensuring that the web services I work on are Basic Profile 1.1 compliant and therefore I have worked a little with Java and specifically the Apache Axis toolkit. It really is good to see that the two stacks work well together. And with the announcement late last year of Service Component Architecture (SCA) and it implementing the WS-* specification as well then the future does look good for the two major platforms.
If you want to play around with WCF then the WinFx SDK now ships as part of the Windows SDK and can be downloaded from here. I reckon its going to be the sweet spot of .NET development for the next 5-10 years so enjoy.