Use the queues to intercomunicate two WCF services in IIS

Hi

I have two WCF services hostedin IIS in two separates Windows 2003 server.

A WCF service (A) makes oneway request to another WCF service (B)

I would like A could make request even when B is down, to do this I suppose that I need queues. It is possible to use NetMsmqBindings in services hosted in IIS

Like I use 2003 server could http.sys solve my problem without the necessity to use queues bindings

Thanks

Javier1



Answer this question

Use the queues to intercomunicate two WCF services in IIS

  • Soulia

    We can't host 'net.msmq' apps in IIS 5.0 or IIS 6.0

    If we try to host MSMQ binding apps in IIS,we will get this error message

    Exception:
    ===========

    [InvalidOperationException: The protocol 'net.msmq' is not supported.]
       System.ServiceModel.Activation.HostedTransportConfigurationManager.InternalGetConfiguration(String scheme) +3799192
       System.ServiceModel.Channels.TransportChannelListener.OnOpening() +59
       System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout) +166
       System.ServiceModel.Dispatcher.ChannelDispatcher.OnOpen(TimeSpan timeout) +49
       System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout) +198
       System.ServiceModel.ServiceHostBase.OnOpen(TimeSpan timeout) +108
       System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout) +198
       System.ServiceModel.Channels.CommunicationObject.Open() +30
       System.ServiceModel.HostingManager.ActivateService(String processedVirtualPath) +101
       System.ServiceModel.HostingManager.EnsureServiceAvailable(String processedVirtualPath)


    Possible solutions:
    =================

    (1)

    If you host your service in self host application,self hosted apps support net.msmq binding.


    (2)

    Windows vista supports custom protocols,in vista,you can host net.msmq apps in IIS 7.0

    http://windowssdk.msdn.microsoft.com/library/default.asp url=/library/en-us/WCF_Con/html/192be927-6be2-4fda-98f0-e513c4881acc.asp

    (3)If service B going to be offline for few seconds or couple of minutes,we can enable,reliable sessions and set Max retry count and send time out to very high,so client will keep trying to send message until reaches max retry count

    http://blogs.msdn.com/shycohen/archive/2006/02/20/535717.aspx



  • Use the queues to intercomunicate two WCF services in IIS