none
WCF Services and External Event Listening RRS feed

  • Question

  • Hi everyone! Good afternoon.

    I have a very specific requirement integrating an Third Party API that provides me events that must trigger an operation on my current application. Fortunately seems to be a Managed Library and might not cause big trouble using it.

    My application has WCF - Impersonated & TransactionFlowEnabled IIS hosted services on whom application relies. What I'm looking for, is for the best way to respond those API events without depending on an WCF user message/request.

    OBVIOUSLY I'm aware that IIS common (and also better way) to use it is to perform request-response operations (either get post basis). I'm looking on IIS Modules a very close friend reccommended to look into, but modules also performs operations over the request pipeline.

    The options I'm evaluating, so far are the following:

    1. To Develop a Windows Service. With the drawback that event content's need to be repacked (serialized) and unpacked (soapmessage deserialized) on the other side. This might not be as useful because of the amount of data might get from the API.

    1b. Host current WCF services (duplicated) as on IIS, but with the Windows Service I'd be able to take control of events & threading, but it might have, at some time two applications -perhaps more issues on maintenance-.

    2. To develop a Singleton always-running thread that could receive messages directly from the API and furthermore, get direct access to my application service (WCF internals) so i don't need to serialize-deserialize.

    3. Migrate hosting to the 1b option, loosing IIS hosting advantages.

    Actually, Serialization weigth is very important; as a result, I should find a way to perform the listening directly instead of connecting them through any WS-Net-TCP Binding Serialization. Actually none of them offers a way to acheive it, but the first option seems to be the best architectural approach.

    Do you guys have any other option useful to achieve this?

    Thanks in Advance

    Ricardo


    RGONZALEZP. SharePoint, BizTalk, SQLServer, EADevelopment Certified Partner. Hardware Development, Robotics, Human Interop, Infrastructure Sensing.

    Friday, January 23, 2015 6:39 PM

All replies

  • This sounds like you're writing a webservice for Workday Notifications. This wsdl uses a few enumerations which svcutil does not transfer to the generated .cs file. If you care about that, you'll need to change those string properties into enums with the range of values specified in the wsdl manually.
    Monday, January 26, 2015 7:57 AM
  • Hi Ricardo Gonzalez Pineda,

    I am trying to involve someone familiar with this topic to further look at this issue. There might be some time delay. Appreciate your patience.

    Best Regards,
    Amy Peng

    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    Monday, January 26, 2015 8:02 AM
    Moderator
  • Hi Amy and Nusag,

    Appreciate your answers. Definitely is not an easy one.

    One possibility I'd be considering (as an alternate solution) is to use a Java Application Server that actually acts only as forwarder to messagges (dependencies on counterpart requires JMS) and deal with this "small payload fee".

    Honestly woudn't be confident on implementing a messaging channel on WCF nor have duplicated application services implementation.

    I'll be glad to read more suggestions.

    Best Regards.


    RGONZALEZP. SharePoint, BizTalk, SQLServer, EADevelopment Certified Partner. Hardware Development, Robotics, Human Interop, Infrastructure Sensing.

    Tuesday, January 27, 2015 4:57 PM