WCF .NET Webservice load balancing using RoutingService vs nginx

650 Views Asked by At

I am currently evaluating solutions for WCF Webservice HA with load balancing. I see 2 feasible approaches for the type of WS i am authoring which are

1) Using the RoutingService API / Class provided by .NET 2) Using a HTTP load balancer like nginx.

Which one is a better approach for WCF WS hosted on IIS.

1

There are 1 best solutions below

1
tom redfern On BEST ANSWER

It depends on a lot of factors. The main one being, is the load balancing requirement a pure availability/scalability driven requirement or is it a business requirement?

If you simply require scale, eg a round robin distribution, or high availability, eg. active/passive failover, and you already have a network load balancer in front of your servers, then I would definitely use that.

The simple reason is that then it will be looked after by your infrastructure people, which is how it should be. Load balancing for scale/availability etc is not normally a development concern.

However, if you have a requirement for routing based on message content, eg routing of high priority calls to one endpoint only, or meeting call processing SLAs for different content, then this becomes a business requirement, because routing logic will then be determined on the business context of the call.

This most definitely is a development concern. In this instance I would certainly use the routing service to implement these various business cases.

Hope this helps you.