Go Premium for a chance to win a PS4. Enter to Win


Web Application Hosting Platform

Posted on 2013-12-17
Medium Priority
Last Modified: 2014-03-10

I am putting up this to discuss and confirm the method of hosting used in this project -

There is a website for a contest in asp.net - so many users will be accessing this website. Large volume of users to hit the website will be around the last 3 days after which the contest will close out.

Resources - we have opted for 3 shared server hostings. Same website is hosted on 3 different servers from different hosting companies like Directi, Indialinks and GoDaddy.
We have created subdomain names like www2.site.com, www3.site.com for purpose of redirection.

To balance the load - when user hits the domain, the main page of the website in a round robin fashion directs the users to each of this 3 servers. Once the user is on that server, they continue using the website throughout from that server.

Are there any loop holes in this strategy?

Why we have not opted for cloud hosting - the trouble we had was with a feature in website where user is able to upload files, the application needs a drive letter to store the files. Hosting like AWS and MS do not provide with any drive letters to objects of persistent storage. This was a bottleneck for our application and hence the above way out.

Question by:shaileshmonani
LVL 111

Accepted Solution

Ray Paseur earned 600 total points
ID: 39751305
I have two concerns in the design:
Once the user is on that server, they continue using the website throughout from that server.
Have you ever tried to make that work?  I don't think I would want to depend on it.  You might want to consult someone at a large web site about how they handle load balancing.
... user is able to upload files, the application needs a drive letter to store the files
I have never used a drive letter in any web application, and I've been a web application developer since 1999.  If you use relative file paths, you would not need a drive letter.  If that's something that is keeping you from a cloud host, I would redesign the application so you can use a cloud host.  Over the life of the application, you'll find it easier than conventional shared hosting, and that explains why so many new web applications are going into the cloud.

Some possible learning resources:
Theory: http://en.wikipedia.org/wiki/Load_balancing_%28computing%29
PHP/MySQL: http://www.php.net/manual/en/intro.mysqlnd-ms.php
Zend: http://www.slideshare.net/e.zimuel/how-to-scale-php-applications
MemCacheD: http://www.php.net/manual/en/memcached.addservers.php
Cloud: http://en.wikipedia.org/wiki/Cloud_computing
Learn More: http://en.wikipedia.org/wiki/List_of_cloud_computing_conferences
LVL 29

Assisted Solution

fibo earned 150 total points
ID: 39751361
Just to be sure:
- you have defined 4 subdomains www, www1, www2 and www3
- on a round-robin fashion, a call to www is redirected to one of the 3 others
- any user running at least one page on one of the 3 wwwX will stay on this server for some session time.

I would fear that this last point might fail sometimes, so I would probably place a cookie on the client machine to store which server was used lastly, and redirect to this one for at least n hours

However, this just solves the symptom: as Ray points, you seem to have a flaw in your design and you should solve it before you install some legacy in your apps and visitors.
Why should you have a disk drive letter?
What if you replace this X:\ by some /var/xdisk/  (and of course all windowsy \ by linuxy /)?
LVL 17

Assisted Solution

jrm213jrm213 earned 300 total points
ID: 39751575
I can see a couple of issues with this setup.

1. If the main site/server has trouble, you are dead in the water because no one will get redirected to any of the other servers. So basically the main site is a single point of failure.

2. There is a very good chance that anyone returning to the site will not visit the homepage of the primary site, choosing instead to navigate back in their browser history or using a bookmark or a link they saved somewhere else (ie. someone emailed them the link) this would defeat the purpose of the primary site if everyone emailed the www2 address, because everyone would end up on that server instead of being balanced to an available server.

Regarding the file saving, the way you are running this, files are going to be uploaded to 4 different servers. How are you going to manage files with the same name (ie. how are you saving/naming the files that the users upload). I am assuming at some point you will need to copy them to one location for review/use.

It would probably be easier to use something like cloudfiles from rackspace or a similar offering from Amazon or MS to keep all your files in one location and not have to worry about file name conflicts. I believe they all have fairly easy to use API's to handle the uploads.

Good luck with your contest, I hope some of what I posted is helpful.

Author Closing Comment

ID: 39917109
Thanks for the feedback on this article.

The setup was kept the same as described here. No hurdles were faced, although the eventuality to face those mentioned here could have remained.  We didn't change our plans as we got assurances from our principal service providers against this.

THanks once again.

Featured Post

Cyber Threats to Small Businesses (Part 2)

The evolving cybersecurity landscape presents SMBs with a host of new threats to their clients, their data, and their bottom line. In part 2 of this blog series, learn three quick processes Webroot’s CISO, Gary Hayslip, recommends to help small businesses beat modern threats.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Lease-to-own eliminates the expenditure of hardware replacement and allows you to pay off the server over time. Usually, this is much cheaper than leasing servers. Think of lease-to-own as credit without interest.
It’s a season to be thankful, and we’re thankful for users like you who engage on site, solve technology problems, and network with others in the industry. What tech are we most thankful for? Keep reading.
This Micro Tutorial will explain how to export DynamoDB tables in Amazon Web Services.
Learn how to set-up custom confirmation messages to users who complete your Wufoo form. Include inputs from fields in your form, webpage redirects, and more with Wufoo’s confirmation options.

972 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question