Does IIS work with http-only WCF services? - wcf

I'm not a WCF expert, so please don't laugh at me.
I need to write a WCF service that receives data through TCP endpoint, not HTTP. Can I still deploy it to IIS or Azure and take advantage of all cool stuff that's baked in (load distribution, etc.)?

Depends on the version of IIS.
IIS v6 supports HTTP only
with IIS v7, you also get WAS (Windows Process Activation Services) which then also supports TCP and other protocol when hosted in IIS
See:
How to: Host a WCF Services in IIS
Setting up a netTcpBinding enabled service in IIS 7

Related

WCF net.tcp IIS Logging

Lately,all our services were switched from basicHttpBinding to net.tcp. Our services hosted in IIS. The problem is that with this change we lost our IIS logging abilities.
We aware about WCF Tracing,but our system utilities works, meanwhile, with IIS Logging only.
Is there some way to enable IIS logging of WCF net.tcp services?
Thank you.
It will not strait forward as with basic http binding, but it seems to be "done-able" - take a look on this posts:
http://blogs.msdn.com/b/james_osbornes_blog/archive/2010/12/07/hosting-in-iis-using-nettcpbinding.aspx
or
http://social.msdn.microsoft.com/Forums/vstudio/en-US/6db46819-e511-4ec2-9c3f-b09deaaedf79/logging-nettcpbinding-requests-in-the-iis-log

WCF service Hosting Servers

I created the service using WCF. As i know i can host in IIS.
Is it possible to host WCF all servers (like apache).?
Please provide the list of server where can host the WCF service and where its best to host service?
You can host your WCF services:
in IIS/WAS (preferably IIS 7.x or newer); IIS 5.1 and IIS 6.0 only support HTTP bindings, while IIS 7.x through WAS supports all WCF bindings
or you can self-host in any managed application (NT Service, console app, WPF app - whatever); supports all WCF bindings and gives you the ultimate control over how your services are hosted / available
Those are your options.
Read:
MSDN : Hosting WCF Services - with further links to hosting in IIS, WAS and self-hosting

WCF http activation without IIS

Is it possible to enable HTTP components for WCF without installing IIS. When i try to enable the HTTP components on windows server 2008 it forces me to enable the web server components.
Is there a workaround by not installing webserver.
(any solution other than self hosting or windows service)
thanks
Ben
WCF services can be hosted in any managed .NET application, not only IIS. You can either host it inside a windows service, or create a standard .NET executable to host the service (self-hosting). You can configure your end point to http eventhough the WCF is hosted outside IIS.
Check this article for more insight:
Hosting and Consuming WCF Services

Hosting wcf service in WAS

I wrote my WCF Service I need to host this in Windows Activation services (WAS) in my vista machine..
Please tell how to host my service in WAS..
Also how to consume this client apps
See Configuring WAS for TCP Endpoints and the other resources at the WCF Developer Center on MSDN.

Is it possible to host a TCP endpoint in an IIS6 hosted service?

I created a wcf service based on ServiceHostFactory, and i'm hosting it in IIS6.
If i use a HTTP endpoint everything works just fine, but when i try to switch to TCP it goes bad.
Is it even possible to do this in II6?
I have a more specific question posted here, that asks for a solution, but i would be happy with (for starters if not) with just an answer (and perhaps an example) to this - less specific question.
Why can't I connect to a WCF service with net.tcp but i can with http?
IIS 5.1 and IIS 6 can only host HTTP bindings. IIS7 has WAS (Windows Activation Service) which allows hosting of endpoints bound to any transport protocol... so it would be capable of TCP.
If you must host with IIS 6, then you're stuck with the HTTP bindings. If not, consider self-hosting in a Windows Service.