Most of you have probably seen a message at one time or another such as “Can’t connect to server” or “Too many Connections” or any of the other error message that can show up when your web site is experiencing too many traffic and visitors ie traffic surge.
As a webmaster I’ve had to deal with this issue first hand — this includes hours spent trying to find out all of the information about this issue and speaking with hosting companies directly.
One of my first experiences was where a client would send out 10’s of thousands of emails to his extremely large email list. The problem was that when he would send out a newsletter to all of them the web site would start getting a lot of traffic and within a few minutes it would crash. This would allow only some of visitors to actually access the web site while the remaining visitors would see error message.
This issue has to do with a server feature known as concurrent connections. Most web site hosting accounts offer a shared hosting account meaning you can get a lot of visitors over a period of time BUT if they all tried to visit at the same time then the web site would crash. A good way of looking at this is to remember the last time you went to work in your car and used the freeway during rush hour. The reason for the traffic jam in morning and evening is because they are ALL trying to get to work or back to home at the same time. But if the traffic was spread out over the entire day then there wouldn’t be a traffic jam. It would still be the same amount of people driving BUT because it’s spread out during the day there wouldn’t be a traffic jam.
So how do we go about fixing or preventing traffic crashes?
One common solution is to switch from a shared hosting account which offers a few hundred concurrent connections at any given time to a virtual private service (VPS) which can offer thousands of concurrent connections. Now keep in mind that a Virtual Private Server is not completely your own server, it’s a virtual server and gives you access to the same resources.
If you’re still getting issues with traffic with your VPS then you need to consider a hosting account that can offer cloud hosting. A cloud hosting account is flexible because you get access to a whole different level of resources, not to mention a whole another level of costs.
Another possible solution is segmenting how you get your traffic. For example if you’re sending an email to 50,000 people then consider first emailing 10,000 then another 10,000 15 or 20 minutes later. This will help with the concurrent connections but not with bandwidth. But the good news is that only image and video heavy web sites will affect your bandwidth because webpages in general are very small in size. An image can be 100’s of times more bandwidth intensive then a webpage — and with videos that would increase to 1000’s of times more bandwidth intensive.
Now don’t confuse concurrent connections with bandwidth — they are not the same. Bandwidth is when you have a lot of visitors and it’s not crashing your shared hosting account BUT the amount of files that they download goes over your account’s bandwidth limit. This can also result in a crash or a bill for extra bandwidth used. Each shared hosting and VPS accounts offer different bandwidths and there are even some that offer unlimited bandwidth.
A good example of bandwidth is driving your car with gas. Once you run out of gas you can either get more or risk being stranded on the side of the road. With a hosting account they may have monthly limits so if your bandwidth limit runs out in just 10 or 15 days then you would have to wait until that month is over so that its renewed. If this is a common issue for you then you need to consider upgrading your account’s bandwidth, upgrading to VPS (if the VPS offers more bandwidth) or finding a better host.
If your issues are bandwidth related but not necessarily too much traffic related then a good solution for you is a service such as Amazon S3. Let’s say you’re a software development firm and you upload your software application and some training videos on your web site. Now keep in mind that neither of these take up much space because hosting companies tend to offer a lot of space now. The problem is when you start getting bandwidth issues once 10,000 people have downloaded it which means you’re maxed out on your bandwidth for that month.
In this case what you can do is, barring it meets your cost criteria, setup an Amazon s3 account, upload your software file and videos to your Amazon account and then link it on your web site. Your hosting bandwidth will not be affected by visitors downloading that software because the software is stored with Amazon S3. The best part is that S3 is very flexible and the service offers a pay-as-you-go pricing because it is based on their cloud. They even have a monthly calculator to find out what your costs would be before you try it out.
Keep in mind there are a few more variables involved and it depends on what type of site so as always do your research. Make sure to talk to your current hosting provider and Amazon S3 support. http://aws.amazon.com/s3/faqs/