How to make client have persistent connection with WCF Service in load balanced servers ?

Keep-Alive value enables clients to establish persistent connections to the WCF services. This configuration offers enhanced throughput because previously established connections can be reused to send subsequent messages to the same server. However, connection reuse may cause clients to become strongly associated to a specific server within the load-balanced farm, which reduces the effectiveness of round-robin load balancing.

What are the 3 things that a WCF Services end point must have?

What are the 3 things that a WCF Services end point must have?

ABC are 3 things that WCFServices end point must have.

  • “A” stands for Address: Where is the service?
  • “B” stands for Binding: How do I talk to the service?
  • “C” stands for Contract: What can the service do for me
  • Address – Address specifies where is the service

    Binding – Binding specifies how to communicate with service

    Contract – Contract specifies what functionalities or operations are exposed by service

    Why are WCF Services are considered as loosely coupled?

    Why are WCF Services are considered as loosely coupled?

    WCF enables one to create SOA services. A loosely-coupled relationship implies that any client created on any platform can connect to any WCF service as long as the essential contracts are met. WCF Services are considered as loosely coupled because WCF services are not tightly bound to a particular protocol, encoding format, or hosting environment. All of these are configurable.

    Difference between Close and Abort in WCF Client Channels

    Close Vs Abort in WCF Client Channels

    Difference between Close and Abort in WCF Channels are listed below :

    1. Close performs graceful shutdown of Client Channel vs Abort shut downs Client channel immediately.

    2. Close waits for in progress calls to complete before closing where as Abort ends in progress calls.

    3. Close should not be called in faulted channels as it can throw Communication or Timeout exception where as Abort should be called in faulted channels.