tags:

views:

261

answers:

2

I've been trying to create a stable web service application for the last 2-3 months. about 2 months ago I made the choice to move over to WCF to take advantage of the single instanced web services.

Since making that move I've had some real headaches deploying to IIS 6 scenarios. Unfortunately because most real clients still use Windows Server 2003 and IIS 6. I've been getting every WCF error you can possibly imagine.

Client patience is wearing thin and soon it will look like we are unable to deliver a reliable solution.

I am almost decided to move back to ASMX services that at least worked, and didn't suffer from stuff like :

The sequence has been terminated by the remote endpoint. The user specified maximum retry count for a particular message has been exceeded. Because of this the reliable session cannot continue. The reliable session was faulted.

The communication object, System.ServiceModel.Channels.ReplyChannel, cannot be used for communication because it has been Aborted

The list goes on... before I make the move back to ASMX, are there any compelling reasons to stick with WCF, because at this rate we could loose large clients over this technology?

+6  A: 

Because, eventually, sites will move to IIS7?

Seriously, if WCF was built for IIS7 seems to work better under IIS7 and you have no problems using WCF with IIS7, then the choice sounds pretty simple. Stick with WCF only if the client has IIS7. Otherwise, use "older" technology with "older" technology.

Michael Todd
or use self-hosting to avoid any IIS-related issues in the first place...
marc_s
Accepted answer. From 1 developer to the next, avoid hosting WCF in IIS6 if you have strict deadlines and are budgeting your man days.
JL
In .NET 4 WCF configuration has been significantly improved. WCF 4 + IIS 7 will practically work without a web.config at all.
Josh Einstein
Can't wait for it, problem is in the corporate world in Eastern Europe clients still insist on using Windows 2003 server. Upgrading a .net version is approachable, asking clients to upgrade the OS, not so easy. IIS7 on Windows 2003 Server, now that would be practical.
JL
I disagree with the premise that WCF was built for IIS7
Cheeso
@Cheeso I don't know enough about it to _really_ answer that statement, but it would appear that someone who is actually _using_ it has no problems under IIS7 but does have problems under IIS6. It's certain that WCF was _not_ made strictly for IIS7 since it works under IIS6, but it appears that it is much easier to use it for IIS7 than IIS6.
Michael Todd
@Cheeso, I'm pretty sure IIS6 is not the way to go. I'm also hoping the WCF 3.5 implementation gets quickly forgotten and replaced by v4 of the framework.
JL
I am not asserting that IIS6 is "the way to go." I think that IIS7 is a big step up in performance, reliability and manageability for IIS. Also it's been out for more than 2 years now; people should move to IIS7. I just don't think you can say, *WCF was built for IIS7*.
Cheeso
A: 

Ok the move back to asmx is done. I must say I am already a lot less stressed out.

First thing I noticed was that the whole setup was a lot less pain free. At one stage I was thinking - "Ok now need to configure the client end", but then I thought "Hang on - nothing to configure!"

I then had 1 timeout issue, and couldn't figure out where to set the timeout value in config, then I remembered "Hell its as easy as setting Service.Timeout = -1" in the code.

Long live asmx. You don't need a Boeing 747 to get you across the park!

Finally disclaimer: I've implemented a service that could take anything from 1 hour to 12 hours to run. If I had a service that was pumping out small bits of data to multiple clients at once I think I would have been ok with WCF.

JL
"Long live ASMX"? You know it's already dead, right? Only critical bugs being fixed, clearly documented by Microsoft as a "legacy technology"? Make sure your business people don't read this post!
John Saunders
@John - Yes sir! And btw - thank you for your outstanding answers so far on my other questions here and there! Really has helped me out a lot when in a fix!
JL