0

We have a Windows 2016 Server VPS that works as download server. users request file with URL and download from those. I'm using asp.net as web application and IIS as web server.
Now after 2 years from beginning, number of download request increased and I afraid maybe one server can't handle all request at same time.

Now I want to increase number of server to 3 or more and i don't know how to handle request to Load balance and fault tolerance of this server.
After some research i found Apache Hadoop that can help me for this purpose.

Does it write choice for my problem? what technique use middle-size(not GoogleDrive or DropBox) company at this moment?

1 Answers1

2

If you only need simple and cost-free load balancing without fault tolerance and session affinity, DNS round-robin on your 2 or 3 download servers would be an adequate solution

It's also quite simple to implement, because you only have to add an additional DNS entry 'www.mydomain.com' pointing to the second server IP address

The main drawbacks :

  • no fault-tolerance : it does not detect if one of the servers is unavailable
  • no session affinity : a client could switch from one server to another during browsing (from a quick look, not a problem on download server)
  • you have public DNS replication delay when you make a change on DNS configuration (but you can limit this with a small TTL value on DNS entry)

On the opposite, if you need fault tolerance, there are load balancing solutions like HAProxy , which can do load balancing at TCP and HTTP level. You can install it on a server dedicated to that role

You also have DNS traffic manager (like Azure DNS or F5 GTM), which can monitor each server availability. But they have significant costs, and are more appropriate for big geographically-distributed applications (in different countries / world regions)

RGT
  • 76
  • 1
  • Thank you very much... I give my answer. can i do this way for more than 6 server? because i think max number of DNS is 6. – Maryam Bagheri Sep 10 '19 at 18:32
  • Thank you for the answer. I've never heard about an hard limit on this point, but I've done some research about it. And it seems to have a possible variable limit because of UDP packet size, depending on DNS implementations (because some DNS implementations might not do a new DNS request over TCP when UDP max packet size is reached). See here for more details : https://serverfault.com/questions/31992/what-is-the-practical-limit-for-ip-addresses-in-dns-round-robin/31997 – RGT Sep 10 '19 at 21:37
  • Thank you @RGT. I read that post . Thank you very much for this big help. – Maryam Bagheri Sep 11 '19 at 05:34