
|
View Full Version : I want to host 1000 sites on 1 server, well, Don't we all? But is it Really Possible?
arrty 10-11-2001, 01:40 AM :) I know what you all are thinking. This guy is out of his mind. Well maybe I am but hear this first.
For the past 4 months I have talked to sales people from many dedicated server companies and I hae recieved just one answer from all of them:
"We can't say exactly how many domains can be hosted as it depends on the type of websites being hosted, but as far as we are concerned we just put 300 to 400 domains on a PIII server and no more.".
Well this does'nt answer my question as I want to host more than 800 domains on one server. Right now I have 200 domains per server.
I have heard all these arguments and agree with all of them but please can someone give me an honest and straight answer?
Argument #1 "It depends on how much traffic your sites have."
Argument #2 "It depends if your sites use cgi or php heavily or not"
Argument #3 "It depends on what type of content each site delivers"
But the reason i'm so frustrated with these is that they don't tell me why I can't go over 400 sites on one server. Now here is what I think.
I had about 300 domains of my own which I used to test my first cobalt raq3 server. Added all the domains to it and then checked its load. The load was 0.5 and CPU usage was 6% only. All these sites were:
10 MB WebSpace
1 POP Account
50 MB Bandwith Per Month
For that month I used about 10GB total bandwith. Now can someone tell me why I should not have put 300 more sites on that server. Lets assume that the server load would double or triple but still it would be too low.
I am considering introducing a very low cost hosting plan for students and personal websites. Now this is the specs of the plan
10 MB WebSpace
1 POP Account
200 MB Bandwith Per Month (No one uses more than 25 MB per month)
I am thinking of getting the following server
* Pentium III 1000mhz CPU
* 512mb PC133 RAM
* 60GB Hard Drive
* 60Gb bandwidth
* 30 IPs
Now how many websites do you think a 1GHz server should hold when a 300Mhz cobalt raq could easily host 300.
Also I want to ask you all: "Does the number of websites matter at all? I mean for example if one website uses 50 GB per month and that is the only site on the server. On an identical server 200 websites use a combined bandwith of 50 GB per month the content of these websites is exactly the same as the one big site. So won't both the servers have the same load?"
Please give constructive answers only and I don't want to hear argument #1 to #3 as I have already specified all my requirements.
I hope this thread gives all of us some better understanding about this confusing topic.
smartbackups 10-11-2001, 01:58 AM Sure you can, why not? You will have to do a few mods to apache and the kernel. You will have to be able to configure/tune the server to increase the number of allowed open files.
I would also run one huge access/error/referrer file, instead of a log file for each site. This would save on CPU and also protect you against the limitations of file locking.
If you go with name based hosting you can do it with one nic card. If you go with IP based hosting, you will most likely be only able to put 254 IPs per NIC card. So you will need 5 NICs in your server, if you do a mix of name and IP based you can get around that complexity.
I don't think you biggest problem will be serving web pages, it will be email, both smtp and pop/imap traffic consume more CPU cycles than http requests, limit the number of e-mail accounts and the amount of e-mail they can receive through rigid quotas and you should be fine.
See the apache site for more information concerning the high performance tuning.
HTH.
arrty 10-11-2001, 02:54 AM thanks smartbackups,
Can I contact you thorugh an Instant Messenger? I am not very tech savvy and although I understand what you have suggested I not not sure how to do that.
mahinder 10-11-2001, 06:55 AM Originally posted by smartbackups
you will most likely be only able to put 254 IPs per NIC card. So you will need 5 NICs in your server, if you do a mix of name and IP based you can get around that complexity.
HTH.
Now who told you this. I think it is possible to have more then 254 ip address on one server.
:cool:
KDAWebServices 10-11-2001, 08:18 AM The main reason for not putting huge amounts of sites per server is that if the server goes down then a large percentage of your business is down.
Personally I think you're nuts for wanting to put 1000 sites on a single server, we aim for about 150-200 depending on the sites, so you've got 5 times as many sites that can cause problems on the server, 5 times as many sites down if the server goes down = 5 times as many unhappy customers when it does go down = not a lot of good word of mouth. But that's just my take on it all.
smartbackups 10-11-2001, 08:25 AM It is possible to put more that 254 IPs per server, you just can't have more than 254 IPs on a NIC card. :eek:
node9 10-11-2001, 09:51 AM i personally think you could easily host 1000 websites on one server
just make sure the server specs are monsterous
e.g. dual 1.4ghz or something
1gig+ of ram
lots of hd space (scsi's at that)
fast connection.
but it's not exactly a good idea. what if your server gets hacked? heh
rm -rf /*/public_html
Michael_Bray 10-11-2001, 10:19 AM Hardware is so cheap nowadays. I am in the market for cheap dedicated server - I was talking to some online friends and were were thinking of just sharing a server then upgrading it with a one of set up fee to something with dual processors, 1GB+ Ram and SCSI hard disks.
We could each have our own Apaches/MySQL etc - and it would be cheaper and perhaps faster for the 5 of us.
Anyway - The point of the reply is that Hardware is cheap. Ram is about 15 cents a MB now, so you may as well get as much in as you can fit if you want to host 1000+ sites! Dual processors would also be in order...
Cheers,
Michael Bray
arrty 10-11-2001, 11:10 AM Originally posted by KDAWebServices
The main reason for not putting huge amounts of sites per server is that if the server goes down then a large percentage of your business is down.
Personally I think you're nuts for wanting to put 1000 sites on a single server, we aim for about 150-200 depending on the sites, so you've got 5 times as many sites that can cause problems on the server, 5 times as many sites down if the server goes down = 5 times as many unhappy customers when it does go down = not a lot of good word of mouth. But that's just my take on it all.
I absolutely agree with you and realize that this might be the case. As I mentioned in my post above I anticipated this much that some might think i'm nuts. But i'm not nuts and that is the reason why i'm planning to keep a backup system. Most probably a second hard drive that makes a backup daily or maybe even RAID. This will minimize the risk but the risk will still be there.
As for the 5 to 1 risk idea, I think that you can explain this by this old saying:
" The bigger they are the Harder they fall "
:) but honetly has that ever stopped us from trying to become bigger :) and I'm no exception.
This is what I think. Instead of putting all my customers on one server I will wait till i have 5 times the sales so that when I put so many customers on one server the risk for me will be the same as you.
Also as I mentioned before this is mostly for personal websites, etc. which even if they are down for an hour or two won't get the client pissed off as he will be paying less.
lotuslnd 10-11-2001, 11:15 AM i've seen a PIII (i believe) FreeBSD machine handle around 900 sites. i'm sure there was only about 256-512 MB ram in it too. 900 sites killed the machine ... but if you jacked up the hardware it would have been able to handle it fine.
lotuslnd 10-11-2001, 11:16 AM also, higher end sun machines (E220R's, etc.) can handle 1000 sites easily.
LinuxGroup 10-11-2001, 11:27 AM I know someone with a server that has about 800 sites on one server. Specs, dual pIII, 2gig RAM, scsi disks. They have had no problems. Server load is usually around 1.5 -3. Hope this helps.
cperciva 10-11-2001, 11:41 AM I think the most important point here is that unless a server is horribly misconfigured (and IP-based hosting counts as horrible misconfiguration), the server doesn't care how many different hostnames are passed to it. For that matter, Apache may be completely unaware of the number of "websites" it is hosting: It is quite easy to set Apache up so that requests to "Host: www.xyz.com" just pull files out of /usr/local/sites/www.xyz.com/ (or equivalent).
The only important issue is the total load on the server -- the total amount of traffic, the total load imposed by the various cgi/ssi scripts, et cetera. One thousand sites will cause exactly the same load as a single site receiving one thousand times as much traffic.
arrty 10-11-2001, 11:43 AM Hi LinuxGroup,
Finally I got the answer I was looking for. Thanks but can you give some more details.
1) What are his hosting plans, I mean does he have high bandwith sites, database sites, etc.
2) Does he use a control panel like Cpanel/WHM, etc.
Can you please talk to me on ICQ#7279267
arrty 10-11-2001, 11:49 AM Originally posted by cperciva
I think the most important point here is that unless a server is horribly misconfigured (and IP-based hosting counts as horrible misconfiguration), the server doesn't care how many different hostnames are passed to it. For that matter, Apache may be completely unaware of the number of "websites" it is hosting: It is quite easy to set Apache up so that requests to "Host: www.xyz.com" just pull files out of /usr/local/sites/www.xyz.com/ (or equivalent).
The only important issue is the total load on the server -- the total amount of traffic, the total load imposed by the various cgi/ssi scripts, et cetera. One thousand sites will cause exactly the same load as a single site receiving one thousand times as much traffic.
Yes finally the answer the correct answer. But I'm no expert so does everyone else agree with this?
JKLIVIN 10-12-2001, 04:35 PM I have seen e250R's host 1200 sites fairly easily, although you have to keep a tight eye on the load.
arrty 10-12-2001, 04:59 PM what is an e250R's? and where can i find more info on it?
lotuslnd 10-12-2001, 05:02 PM sun.com
NORRITT 10-12-2001, 08:25 PM A RISC prozessor (sunīs "Netra"?) would be the best solution for such a mass-hosting, wouldnīt it?
arrty 10-12-2001, 08:31 PM I just checked the prices for these SUN servers :)
lets remember that the main reason i want to put 1000 sites on a server is to keep the cost down so I can offer cheap hosting to clients who want to host personal domains with low space and bandwith usage.
I am considering PIII 1GHz with 60 GB HD and 1GB RAM
cperciva 10-12-2001, 08:31 PM Originally posted by NORRITT
A RISC prozessor (sunīs "Netra"?) would be the best solution for such a mass-hosting, wouldnīt it?
Yes, a RISC processor would be good. Using a pre-1986 processor would certainly result in very poor performance.
All RISC really means is "invented after 1985". It might have had a different meaning once (eg, "Really Invented by Seymour Cray"), but everything, reduced or complex, was called RISC for about ten years, so the term is irrelevant apart from as a method of dating processors (and people!)
Tetraboy 10-12-2001, 08:34 PM A Dual AMD 1.5Ghz with 2GB of ram might be able to take it.
cperciva 10-12-2001, 08:39 PM Originally posted by Tetraboy
A Dual AMD 1.5Ghz with 2GB of ram might be able to take it.
If you're dealing with 20MB websites receiving 200MB of traffic per month, and the sites do not have excessive amounts of dynamic content (ie, no more than most), that server could handle a *minimum* of 5000 such sites. Of course, one site which is making lots of poorly coded mysql queries could take down the entire server, but that's an argument against mysql, not against hosting lots of sites.
Personally I'd be disappointed if the server you suggest could handle less than a 15,000 such tiny sites.
arrty 10-12-2001, 08:53 PM cperciva,
may i contact you via ICQ or AIM?
NORRITT 10-12-2001, 08:58 PM even if you put 4 CPUs in a normal (means no special server with special CPU from sun ...) maschine it would be not really faster on such small sites!
I do not belive that it would because dual CPU server are just good for big databases, they do not improve the number on normal static websites you can host. I belive that I have read it on a hardware page a few time ago, but what do you think?
Dylan 10-12-2001, 09:06 PM 1000 domains? :eek:
You think your clients that are paying next to nothing won't mind 1 or 2 hours here or there? They are actually the one's that "DO" mind.
arrty 10-12-2001, 09:13 PM Why would they mind.
They have some pictures of themselves and their families online, etc. so even if the site is down for 4 hours do you actually think they would mind? they probably won't even bother reporting the problem and decide to just try again later.
NORRITT 10-12-2001, 09:17 PM Originally posted by arrty
Why would they mind.
They have some pictures of themselves and their families online, etc. so even if the site is down for 4 hours do you actually think they would mind? they probably won't even bother reporting the problem and decide to just try again later. If it is cheape enough and the comsumer really do not need their site that much, he might be right.
i have noticed, that people, who sign up for really cheap hosting solutions calculate with bad uptime or bad service. they just see the price and that they have their own site.
and well, they are also right. if someone visits their site it is sure one of their friends and they will also come back later .. the most important is, that they have an email adress @theirshit.com. thats all :cartman:
arrty 10-12-2001, 09:31 PM Yes I understand what you mean. Right now I mostly get trouble from people with the cheapest plan and they act like without them the company will go out of business. Mostly its their own problem and they blame it on the host. But I have also noticed that these customers although they choose the cheap plan are running their business on the site so that is why they get so angry.
I am going to name the cheap plan "Personal Plan" and mention that this server will host a large number of sites so that no businesses choose this plan.
Still I am trying to figure out on this thread a way that I can avoid any downtime so that my clients get the best possible service for the low price they are paying.
NORRITT 10-12-2001, 09:49 PM Originally posted by arrty
Still I am trying to figure out on this thread a way that I can avoid any downtime so that my clients get the best possible service for the low price they are paying.
well .. test your server before running that much accounts and do not give them perl, php or any databases.
and I think you will get higher and higher in the number of accounts, so you can see, if the server can handle it or not.
but 1000 accounts .. hmmm com/net/org domain, 10 MB and a few mb traffic for $1 would be a good price ... for both! I do not think anyone would run the business site on such a plan
arrty 10-12-2001, 09:57 PM some people still do, however if i mention it that businesses should'nt choose this plan then they won't
pcsteve 10-12-2001, 10:05 PM Originally posted by KDAWebServices
The main reason for not putting huge amounts of sites per server is that if the server goes down then a large percentage of your business is down.
Personally I think you're nuts for wanting to put 1000 sites on a single server, we aim for about 150-200 depending on the sites, so you've got 5 times as many sites that can cause problems on the server, 5 times as many sites down if the server goes down = 5 times as many unhappy customers when it does go down = not a lot of good word of mouth. But that's just my take on it all.
Bingo!
You are just asking for trouble with 1000 sites on a single server. Plus not to mention, you will have to do some serious load balancing to keep down load times.
Gunzour 10-12-2001, 10:06 PM From a business standpoint.. I think your idea is crazy. I would never tell a customer "who cares if it's down for a few hours!" no matter how little they are paying.
Look at something like hotmail.com -- completely free, but when the service has experienced downtime, they get major press coverage and thousands of complaints from people upset that they can't access their (free) email.
You're also talking about setting this one server up as one huge single point of failure. But hey, that's your choice. :)
From a technical standpoint, there is no reason you can't put 1000 sites on a single server. I've seen a low-end sun machine with over 10,000 virtual hosts, all sharing the same IP. Granted the traffic on each host was virtually zero, but that's the point -- the number of hosts is not what presents a problem. The amount of traffic, the amount of CPU usage (mostly from scripts), the amount of memory (mostly from the number of httpd processes you have running)... those are where you hit bottlenecks. If all 1000 of your sites are static pages with little traffic -- no problem.
You're saying things like "why should they (your customers) be upset?" It doesn't matter why -- it just matters that they are. And trust me, if you have 1000 customers, *some* of them will get upset. I once did tech support for an ISP and had a customer call in because she couldn't log into her Linux box because she didn't know the password. We didn't install the linux box. It was sitting on her desk and she was trying to login at the console. It had absolutely nothing to do with us, but when I tried to politely tell her I couldn't help her, she cancelled her internet service.
My point is this: it is unreasonable of YOU to expect all of your customers to be reasonable.
Doug
jolly 10-13-2001, 03:17 AM No one can tell you how many sites you can run on server. It will depend on the server load.
Don't give anyone MySql or Cgi-bin if you want to run more sites on server.
I guess you should start hosting and see if your server can handel 1000 sites or 5000 sites.
Keep on upgrading server with load this is the best idea.
arrty 10-13-2001, 09:54 AM I don't expect all my customers to be reasonable but I'll be happy even if most of them are. And as for unreasonable customers cancelling becuase of stupid reasons, well we can't do anything about that and my Business Plan includes this risk and I have made provisions for such cancellations.
I still think that the benefit far outweighs the risks.
Ericwenlong 10-13-2001, 10:14 AM Putting 1000 domains on a single server may save cost........but you are increasing the risks by leaps and bounds. You should diversified the risk, not increasing it. If the server goes down, you could be getting more trouble than you could imagine and your whole business could be ruined by the server failure.
Concerning on whether you can put 1000 domains on a single server, yes.....why not? You can put as many as you wish, but only as far as your server's resources and hardware permit. You have already the larger part of the answer you are looking for.
Why not start a host and try doing that, then share your experiences here and see if you can come up with any other arguments?
DavidU 10-15-2001, 11:30 AM Damn you're a cheap tool.
Anyways. Using mod_vhost_alias I was able to provide service for 1200 domains.
I found it easier to switch to a mod_rewrite rule but the answer is that it is TOTALLY doable.
I used name based virtual hosting so I didn't have to worry about more then 254 IP's on a NIC but any decent machine these days probably has 2 or 3 NIC's anyways.
-david
remarkable 10-15-2001, 03:56 PM Hi,
I was hosting 1000 domains per server (including NT) more than 2 years ago. It is very possible and doable. Yes, you can have more than 256 IP's per NIC, even on windows.
Yes.. The risks are higher.. and technically possible.
NORRITT 10-15-2001, 04:00 PM Originally posted by DavidU
Using mod_vhost_alias Whats that?
arrty 10-15-2001, 04:02 PM Hello DavidU and remarkable,
Can you both please share with us the specs of your servers on which you hosted so many domains and also the specs of each of the domains, I mean how much bandwith and space each of the used.
remarkable 10-15-2001, 04:09 PM These servers were PII, I forget the MHz, FreeBSD/NetBSD servers. Some with Dual CPU. 512 to 1GB Ram. 1000 IP's on one NIC.. The Windows servers were Dual CPU machines. We averaged 500 to 750 sites per server.
Yes.. If a server went down there were a lot of calls. Hard to manage but possible. I think today as apache has improved and the servers are much faster it should be no issue doing this. The hard part is giving people a control panel. I suggest the control panel run on a central machine and connect to the server to manage. Email and DNS also run on seperate machines.
Originally posted by arrty
Hello DavidU and remarkable,
Can you both please share with us the specs of your servers on which you hosted so many domains and also the specs of each of the domains, I mean how much bandwith and space each of the used.
DavidU 10-15-2001, 04:15 PM Originally posted by arrty
Hello DavidU and remarkable,
Can you both please share with us the specs of your servers on which you hosted so many domains and also the specs of each of the domains, I mean how much bandwith and space each of the used.
Every single domain had this content:
http://parked.everydns.net/
The machine is an Athlon 1000 // 512 megs ram // colo'd at Verio.
The load usually sits around 0, bursting to like .5 during big cron jobs.
-davidu
delemtri 10-15-2001, 07:28 PM Hiya,
Is there a formula of some type you use to calculate how many average hosting accounts the server can handle?
remarkable 10-15-2001, 07:39 PM The best thing to do is:
Memory:
64MB for the base os + 1.5MB for each domain.
Disk:
Account Disk Space * Number Account = Disk Size / 80%
Don't forget to figure in 1GB for OS and Logs.
SWAP = Memory
CPU does not matter as much unless you have lots of PHP, PERL or Cold Fusion. If you have alot of these users double the memory requirements and place 1/2 the customers on a machine.
cperciva 10-15-2001, 07:53 PM Assuming that you are reasonable about what sort of modules you include in your Apache configuration (ie, *not* mod_perl or mod_php), you should find that for every MB of RAM your server has beyond 64MB it can handle 5GB/month of traffic. Also, for serving static content, you'll need roughly 1 Pentium III-MHz for every 10GB/month of traffic; for 'moderately dynamic' content you may need about five times that much (of course, a few mysql databases could clog up the entire server, but that will always be the case). Disk space, well, you'll need enough space for the sites plus 2GB for the operating system.
In other words,
CPU_REQUIRED = (monthly traffic / 2GB) MHz
RAM_REQUIRED = (monthly traffic / 5GB) + 64 MB
DISK_REQUIRED = (web sites) + 2 GB
So if you're going to be hosting 1000 sites, each using up to 10MB disk space and 200MB traffic/month, you'd need something along the lines of a 100MHz Pentium III, 104MB of RAM, and a 12GB hard drive... in other words, almost any well-configured server could handle it.
delemtri 10-15-2001, 08:55 PM So, if I have an AMD Dual 1200MHz with 1GB of RAM and 80GB of space, I can host:
by cperciva's method: (cpu) 4800GB of traffic (ram) 4700GB of traffic (disk) 1560 sites if I average 50MB per site
by remarkable's method: (ram) 620 sites (disk) 1260 sites if I average 50MB per site
Of course I'll be enabling Perl and PHP but I don't see any reason to expect more than average usage of them, right?
jolly 10-16-2001, 05:30 AM Is there any simple formula to calculate how many sites can a server handel.
Originally posted by smartbackups
It is possible to put more that 254 IPs per server, you just can't have more than 254 IPs on a NIC card. :eek:
I'm not sure if anyone else addressed this issue; I briefly skimmed through this thread but didn't see it mentioned. Anyhow, there is no limit on the number of IPs on a NIC. (Saying "NIC card" is redundant but we won't get into that.) A single NIC can hold as many IPs as the OS and software on the server will support. In the case of UNIX (FreeBSD anyway) this could mean thousands of IPs on a single NIC.
sasjamal 10-16-2001, 06:39 AM lol man if i had 1000 custommeers, man wid some of the money id just go ahead and get me a nother server at leeast to make it 500 / 500, why not!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! it would be coo coo u could name one server cheese and name the other sandwich and u could as a code name anytime u wanna do someethign cool say cheese sandwich and ur pb laugh a lot and eveeryone woul look at u like wasssup wassup wid this foo lol
pe@ce
jp_howard 10-16-2001, 06:56 AM Originally posted by delemtri
Of course I'll be enabling Perl and PHP but I don't see any reason to expect more than average usage of them, right?mod_perl and PHP both add to the memory overhead of each Apache process, which reduces the number of simultaneous connections that you can handles. To minimise this problem you can add a mod_proxy frontend that handles static pages and caches and passes PHP/mod_perl requests to backend servers over the local interface, but this only reduces the problem--it doesn't avoid it.
delemtri 10-16-2001, 07:23 PM So, adding memory would be a good idea if I want to enable PHP and Perl?
cperciva 10-16-2001, 08:05 PM Originally posted by delemtri
So, adding memory would be a good idea if I want to enable PHP and Perl?
No. The Right Solution is to run scripts through suexec, in which case the perl and php interpreters will be run as separate processes as needed.
delemtri 10-16-2001, 08:16 PM Suexec? Whazzat? (Sorry, I have no experience with this sort of stuff.)
cperciva 10-16-2001, 08:21 PM We're drifting dangerously off-topic, but since you asked: suexec is a "wrapper" which allows Apache to run cgi scripts with the permissions of a different user. Using mod_perl, perl scripts can access any files which Apache can access, including overwriting files used by other cgi scripts; using suexec and the "standalone" perl interpreter, perl scripts are run with the permissions of the user who created them, which both keeps them away from other people's files and keeps their files safe from interference.
delemtri 10-16-2001, 08:29 PM We're not REALLY off-topic, I mean, we're still talking about ways to get tons of sites on one server. But I'll look into the suexec thing away from WHT. :)
Dylan 10-16-2001, 09:40 PM Originally posted by sasjamal
it would be coo coo u could name one server cheese and name the other sandwich and u could as a code name anytime u wanna do someethign cool say cheese sandwich and ur pb laugh a lot and eveeryone woul look at u like wasssup wassup wid this foo lol
pe@ce
;) :D
arrty 10-16-2001, 10:32 PM sasjamal,
I already have two servers and i'm getting another one this week. However I totally disagree with you. I say that if you have the resources then you are a fool not you use them to the maximum. And whasting resources is like whasting money to me. If it is possible to put 1000 sites on a server then I will.
mpope 10-17-2001, 04:11 PM Originally posted by arrty
I say that if you have the resources then you are a fool not you use them to the maximum. And whasting resources is like whasting money to me. If it is possible to put 1000 sites on a server then I will.
Well, I somewhat disagree with you. If you max out the server, then your clients' pages are obviously going to load slower than if the server was at 50% usage. Now, what does it really cost to have another server? $2000 for the server plus a couple hundred a month (keep in mind - most of your monthly cost is bandwidth, which you are going to use even if you have all of the sites on one server). So, in the grand scheme of things, the $2000 is not really that much money, and $200 / month is nothing compared to your bandwidth bill on 1000 web sites.
So, if you use 50% of the server resources instead of 100% , it will only cost you a couple hundred bucks per month, and your clients will love you for it. Wouldn't it be nice for all of your clients to tell their friends "Man, so-and-so web hosting co. 's servers are extremely fast, you should sign up!" rather than "yeah, their servers are o.k."
Anyways, that's just the way I see it. You're definitely entitled to your opinion :D
purplemokey 10-17-2001, 04:24 PM Would your web server be any faster serving up your website if you are using only 10% of server resources vs 80% of server resources???
mpope 10-17-2001, 04:55 PM Originally posted by purplemokey
Would your web server be any faster serving up your website if you are using only 10% of server resources vs 80% of server resources???
Well, it's going to perform better with less web sites on it is my point. I agree that my argument wasn't totally correct, but considering I personally think that 250 sites is too many, it works for the numbers that he is using (ie... only 500 sites instead of 1000).
Anyways, I have one server that used to average a .06 load. It's now up to .40 regularly, and I'm pretty sure I can notice a difference in the speed that the pages are served (it's probably in my head though :D )
Also... My main point is that it doesn't really cost that much more, so he might as well put them on 2.
purplemokey 10-18-2001, 02:10 AM Okay here's a question:
You have 1000 websites using mysql and php and with unlimited bandwidth. Which one of the links in the chain will be the bottleneck?
a) mysql will be the slowest accessing its data?
b) processing php scripts will be the slowest?
c) server can only handle x amount of bandwidth at any point in time?
d) cpu can only process so fast?
jp_howard 10-18-2001, 03:31 AM Originally posted by delemtri
[B]We're not REALLY off-topic, I mean, we're still talking about ways to get tons of sites on one server. But I'll look into the suexec thing away from WHT. :)Yes we are still on topic, because this is an important point for running lots of server processes on one machine. And the advice to use suexec is inappropriate for most situations. Firing up a new PHP or Perl interpreter for each new request is very resource (both disk and CPU intensive) and so is generally a Bad Idea (tm) in resource constrained scenarios.
The Correct (tm) approach is to use a persistent server (like PHP embedded in Apache or mod_perl) but to only make these application servers available over the local interface. They are then accessed by front-end light-weight Apache processes which serve up static data directly, and proxy dynamic requests back to the application servers. Even if you have no static data you should still do this, because the front-end proxies handle the lingering close and lengthy uploads/downloads, leaving the application servers available to churn code.
If you aren't up to setting all this up (and it's not easy) consider using speedycgi instead. Speedycgi provides a pool of persistent Perl interpreters which are contacted by your front-end Apache processes as required. The only downside compared to mod_perl is that you can't customise other HTTP transaction phases (like authentication and logging) with speedycgi, which isn't used by most people anyway. Speedycgi is really easy to set up, and porting most apps to speedy requires changing only one line.
arrty 10-18-2001, 04:25 AM Originally posted by mpope
Well, it's going to perform better with less web sites on it is my point. I agree that my argument wasn't totally correct, but considering I personally think that 250 sites is too many, it works for the numbers that he is using (ie... only 500 sites instead of 1000).
Anyways, I have one server that used to average a .06 load. It's now up to .40 regularly, and I'm pretty sure I can notice a difference in the speed that the pages are served (it's probably in my head though :D )
Also... My main point is that it doesn't really cost that much more, so he might as well put them on 2.
I would again like to say to you all that I am NOT trying to load my server to the point that if i put one more site on it it crashes.
The main reason for starting this thread is to determine how many sites can I put on the server without it slowing down.
Now please nobody say that you should host 250 sites on it only. This as now begin to annoy me as you can see in this thread above even thousands of sites can be hosted on a single PII server. These companies who are hosting so many sites are very reputable ones and are very fast.
This 250 site 'Barrier' is nothing but a old wives tale. Now I request every body to throw all concepts and ideas away and think for once. Read this and answer:
Q: 3 Years ago on a 266 MHz PII server usually 250 sites were hosted. Now calculate how many sites a PIII 1GHz machine could host? :) (ok heres a hint becuase the server is 5 times more powerfull the number of sites should also be 5 times as more powerfull).
Also how many of you buy a PIII machine and are scared that to open two windows of Internet Expolorer the PC will become slow?
:) Be realistic people, the everything in world is become faster and more powerful and bigger. You guys do the same.
mpope 10-18-2001, 04:43 AM Good point. However I would imagine the sites hosted on that server would be more complex now than 3 years ago. I would think that there would be a heck of a lot more people using PHP / MySQL now, and this seriously uses up server resources.
Don't get me wrong, if it can be done, and done without affecting the page load time / server uptime, then I say more power to you! ;)
Walter 10-18-2001, 08:53 AM Originally posted by arrty
Q: 3 Years ago on a 266 MHz PII server usually 250 sites were hosted. Now calculate how many sites a PIII 1GHz machine could host? :) (ok heres a hint becuase the server is 5 times more powerfull the number of sites should also be 5 times as more powerfull).
The server is not 5 times faster.
hint 1: 1000 / 266 = 3.759... and not 5
hint 2: The CPU is only one of many factors that count in (e.g. hard disk). Maybe the machine is 2 times so fast but as mpope already said, more applications today use more resources.
Ericwenlong 10-18-2001, 10:31 AM Dual P3 1 Gig
4 GB Ram
2 X 36 GB SCSI
Will this server be able to handle 1000 sites in a normal combination (high usages and low usages) smoothly?
arrty 10-18-2001, 10:50 AM The server is much about 4 times faster and also more powerfull. I see that ram is a lot cheaper so we have at least 7-8 times more ram and at that time we had 2-3 GB hard disks and now 60 GB hard disks.
As for new aplications taking up more resources I don't think that they take up too much resources.
Also I have about 400 websites right now and only 2 of them use mySQL inspite of the fact that 20 of them signed up for the mySQL plan and only less than 10 of them use php although i offer it free with all plans. Now as I mentioned before my thread only relates to low usage PERSONAL site. Do you really think someone will create a big php script to put online a picture of him and his/her family?
Or wait maybe he'll put a picture of his girlfriend, that should take up a lot of my servers resources! <sorry for the joke if someone thinks it is unappropriate>
The conclusion is that although very few of my clients will use php i still want to include it to make it more attractive.
LinuxGroup 10-25-2001, 03:03 PM Originally posted by arrty
Hi LinuxGroup,
Finally I got the answer I was looking for. Thanks but can you give some more details.
1) What are his hosting plans, I mean does he have high bandwith sites, database sites, etc.
2) Does he use a control panel like Cpanel/WHM, etc.
Can you please talk to me on ICQ#7279267
350MB space, 15000MB Transfer, Mysql, php, cgi, Cpanel/WHM
sqposter 10-25-2001, 05:57 PM I noticed that everyone here mentioned Apache as the web server. that's not the only platform in the game.
I've been spending some time with a zeus web server for research in starting a web hosting company ( I'll be a reseller soon) and I've got to say they seem to be faster.
but anyway we were able to do the following:
400 web sites ( post nuke ) with a total page size of 89k, 100 news items within the mysql database
these 400 sites had phpadsnew ( latest beta 2.) sending
1 - 3k images (gif) button
1 - 5k image gif sky scraper
1 - 12k image gif banner
open request on each of the mysql databases was between 10 - 14 per web site ( i think )
we got the cpu usage to 4 when we were loading 1 page request per 2.7 second accross the entire 400 sites ( about 20-25 user request per minute per website or about 8000 pages request per minute gross to the server.
the guys at Slashdot have been able to pull 8 to 12 page request per second without problems but then again they run 4 or 5 servers. and the new modifications should bring them up to 20+ page request per second without problems. they have a write up on their web site about how the servers were acting on the day of the WTC attack.
the server we used was :
dual intel 550's
2 hard drive controler cards
4 - 20 gig hard drives
4 gigs of ram
We think we can drop the cpu usage to 1 if the cpu's were at 850-1200 range
But the big problem with zeus is the price $ 1800 per web server. Apache is free.
-michael
p.s. If I were to host 1000 sites I'd run dual chips 1200mghz, 4 megs of ram if I could go 6 i would, 2 hard controllers 4 high speed hard drives of atleast 20 megs each, I'd run my nic car in the 133 pci slot ( the other 2 slots for the hard drive controller ) and have cooling fans running like crazy. Also I would fear the day of down time ( can you imagine 400 customer calls in less than 4 hours).
cperciva 10-25-2001, 06:11 PM Originally posted by sqposter
I noticed that everyone here mentioned Apache as the web server. that's not the only platform in the game.
I've been spending some time with a zeus web server for research in starting a web hosting company ( I'll be a reseller soon) and I've got to say they seem to be faster.
Zeus has demonstrated a server which handled 15000 simultaneous connections at 320kbps each. That's 4.8Gbps.
Zeus claims that their server is "3-4 times faster" than Apache. That would mean Apache could serve about 1.5Gbps on the same server.
Question: Once you get above 1Gbps from a single server, does it really matter what the exact numbers are?
Serving dynamic pages is limited by the cpu; however, both Apache and Zeus will be limited to the same rate. Serving static pages is limited by the drives and disk caches -- ie the hardware plus operating system. Again, Zeus will have no advantage.
Zeus is superior to Apache only in the case of serving huge (over 100Mbps) amounts of static content, all of which resides within memory caches. Is this characteristic of web hosting companies? Definitely not.
Save yourself some money and don't bother with Zeus.
sqposter 10-25-2001, 06:31 PM cperciva, that some cool info you got. I liked the explaination of
" Serving dynamic pages is limited by the cpu; however, both Apache and Zeus will be limited to the same rate. Serving static pages is limited by the drives and disk caches -- ie the hardware plus operating system. Again, Zeus will have no advantage. "
but I jumped to their site, they mention "PHP performance with Zeus is up to 45% better than with mod_php on Apache." which might contradic your statement. Would the speed increase be based on special calls within the serving software ? or is just some hard core tuning.
-Michael
also if you have any bad zeus exprience would you be kind enough to tell me about it via a private message.
cperciva 10-25-2001, 06:45 PM Originally posted by sqposter
but I jumped to their site, they mention "PHP performance with Zeus is up to 45% better than with mod_php on Apache." which might contradic your statement. Would the speed increase be based on special calls within the serving software ? or is just some hard core tuning.
I'm not absolutely sure, but I would guess that the performance of Zeus is mostly due to improved PHP code from Zend.
adhytia 10-25-2001, 10:19 PM I have 1000 sites at my Pentium 233 MMX with 512 MB SDRam
But, No Mysql, No CGI, No PHP, 5 email per sites, and all of the sites is at one IP.
It is running well and never down, the sites is using for all of my students at University.
But for production server, I sell for my company, I use it only for 300 sites per server, with unlimited email pop, php, Mysql, Postgresql, FP ext and much more.
Regards
Adhytia Wisnu Sasmita
palmtree 10-26-2001, 05:05 PM interesting discussion.. myself I've only had around 300 virtual sites on one server.. never really thought about putting more cause everyone always said "no!".. this thread has got alot of people thinking though..
And as for those people saying that people are nuts for doing this, well, they are probably old school like myself, hosting since early 1996, and I have one question for them.. ever heard of redundant hardware? Make the hardware fault tolerant and your downtime goes down to virtually nothing.
I used to deal alot with Compaq servers.. if you have a Proliant server sitting there running Redhat.. raid 5, raid 1, whatever on multiple disks, fault tolerant logic boards, fault tolerant CPU's, etc.. you get my drift.. and thats just for a cheap little compaq server..
Why would people say they are nuts for putting "more than the usual" sites on 1 server? It doesn't make sense.
Thought I'd vent a little.. hope it makes sense..
raqworld
jp_howard 10-26-2001, 06:36 PM Just to follow up on cperciva's accurate and informative description of why it's rarely worth bothered to spend the money on Zeus, I'd like to add a suggestion for those who really want to spit out very large amounts of static content--use a small server dedicated to quickly serving static content. You could use for example Tux, thttpd, mathopd, which have similar speeds to Zeus but are free and have lower memory footprint.
As I've described earlier in this thread, you should always use separate server processes for static vs dynamic content. You can use Apache+mod_php (with the Zend optimizer if you want extra speed) for your PHP pages, and Tux et al for your static pages. That way you'll be able to run a hell of a lot of users on one box using free (libre and money) software (how many? It depends on the users and what you're serving them!).
Alan - Vox 10-26-2001, 07:10 PM I have 170 domains on my server just now, the 15 minute load average is between 0.1 and 0.2 (dual processor) This is with 512mb ram the memory is 35% used. now if i switch of apache the memory drops to 20% used. so it takes 15% of 512mb ram to run 170 sites which is 77mb. and the os uses approx 100mb.
Now if i put 2gb ram in the server, then i would 1948mb to use on sites, so in theory i could host 25 times as many sites. The load on the server would also obviously be 25 times higher as well which would be 5, which is fine on a Dual Processor server.
So in theory i could host 4250 sites on the server now, if i only use 80% to be on the safer side that would be 3400 sites, it would be interesting to see what could be done in practice. Obviously i would need some kind of raid set up for this to work properly.
sqposter 10-26-2001, 10:05 PM Is server load within the context of this thread is it liner, logrithmic or to the power of .
reason I ask was the following stament was made and I'm not sure how to understand it.
start quote :
I have 170 domains on my server just now, the 15 minute load average is between 0.1 and 0.2 (dual processor) This is with 512mb ram the memory is 35% used. now if i switch of apache the memory drops to 20% used. so it takes 15% of 512mb ram to run 170 sites which is 77mb. and the os uses approx 100mb.
Now if i put 2gb ram in the server, then i would 1948mb to use on sites, so in theory i could host 25 times as many sites. The load on the server would also obviously be 25 times higher as well which would be 5, which is fine on a Dual Processor server.
So in theory i could host 4250 sites on the server now, if i only use 80% to be on the safer side that would be 3400 sites, it would be interesting to see what could be done in practice. Obviously i would need some kind of raid set up for this to work properly.
End qoute :
No offense to the poster of the above mentioned quote but, I'm thinking if a small percentage (10%) of the web sites are active with more than 1 request per second, those CPU's are going to be flying ( not to say hot). and to quote cperciva:
Start quote :
Serving dynamic pages is limited by the cpu;... Serving static pages is limited by the drives and disk caches -- ie the hardware plus operating system
End qoute :
So my question realy is " how do you define the max load a server can handle under a specific gross request per second"
I think I might allocate max load to = 1.00 leaving the above as a safe point
I think with that solution, I could then define how many sites I could host on the respective server.
again using slashdot info, about 8 - 10 request per second = 1,000,000 page loads per day.
thanks
Sqposter / Michael
cperciva 10-26-2001, 10:18 PM Originally posted by sqposter
Is server load within the context of this thread is it liner, logrithmic or to the power of .
As a rough approximation, the cpu load will scale approximately with [cpu utilization] / (1 - [cpu utilization]). So a load of 0.10 is probably somewhere around 9-10% cpu utilization; a load of 1.0 is probably about 50% cpu utilization.
So to answer your indirect question, SplashHost is indeed in error in believing that "the load on the server would also obviously be 25 times higher".
sqposter 10-26-2001, 10:30 PM Originally posted by cperciva
As a rough approximation, the cpu load will scale approximately with [cpu utilization] / (1 - [cpu utilization]). So a load of 0.10 is probably somewhere around 9-10% cpu utilization; a load of 1.0 is probably about 50% cpu utilization.
So it seems to be logrithmic. just guessing here but a cpu load of 2 should be about 70% - 75% cpu utilization and 3 then would be 82% - 88% cpu utilization ?
-Sqposter / Michael
cperciva 10-26-2001, 10:45 PM Originally posted by sqposter
So it seems to be logrithmic.
It is not even remotely logarithmic. But I'm a mathematician, so maybe my definition of logarithmic is more correct than most.
just guessing here but a cpu load of 2 should be about 70% - 75% cpu utilization and 3 then would be 82% - 88% cpu utilization ?
66% and 75% respectively. A cpu load of N corresponds to a cpu utilization of somewhere around N/(N+1), assuming a reasonable lack of correlation between process activations.
sqposter 10-27-2001, 12:12 AM Originally posted by cperciva
It is not even remotely logarithmic. But I'm a mathematician, so maybe my definition of logarithmic is more correct than most.
66% and 75% respectively. A cpu load of N corresponds to a cpu utilization of somewhere around N/(N+1), assuming a reasonable lack of correlation between process activations.
Thank you for the update, I do like knowing the "numbers". When I saw the original problem I saw something that was not the norm and I was hoping that someone ( anybody that was educated along these lines ) could figure out the math better. ( My math gift is finding data that's out of the norm or guessing the odds of something happening, Both are an odd gift but if I told you what I do with them ( as a mathematician ) You would wet your pants with laughter. I'm sending you a PM
Web Master 2 10-28-2001, 01:56 AM You can host 1000000 sites on one server using one IP address and 16 MB of ram, and 500MB of disk: if they are all under construction sites that has no real traffic.
For real live sites, it's a matter of getting acceptable performance for your customers.
percent5 10-30-2001, 12:01 AM Originally posted by cperciva
I think the most important point here is that unless a server is horribly misconfigured (and IP-based hosting counts as horrible misconfiguration), the server doesn't care how many different hostnames are passed to it. For that matter, Apache may be completely unaware of the number of "websites" it is hosting: It is quite easy to set Apache up so that requests to "Host: www.xyz.com" just pull files out of /usr/local/sites/www.xyz.com/ (or equivalent).
The only important issue is the total load on the server -- the total amount of traffic, the total load imposed by the various cgi/ssi scripts, et cetera. One thousand sites will cause exactly the same load as a single site receiving one thousand times as much traffic.
My question is: How many IP-based names could I host on an 800mhz/128mb machine before it constituted a "horrible misconfiguration"?
sqposter 10-30-2001, 01:52 AM Originally posted by percent5
My question is: How many IP-based names could I host on an 800mhz/128mb machine before it constituted a "horrible misconfiguration"?
OK let's see if we can refine the question.
are you asking :
1) I'm going to use this machine as a DNS server, so now tell me how many can I redirect to
2) what do you consider the maximum dynamicly served pages I can pull on this system per second.
then using that number, I can multiply it 3600 (60sec x 60 min x 1hr ) to figure out the limits of my machine page serving for 1 hr.
after that sqeeze as many account as you can so that their peak loads ( with all the other loads ) never hit the limit on any given hour.
Ok side note :
a servers goal in my point of view is to give equal performance to all users and to have as many users as possible. If you are blending your accounts on a machine you could in theory have your machine running at full blast for many long hours.
IE: your server has 300 account
your server 300 account get traffic from around the world, you would hope that 100 accounts get traffic from europe time 9-5, the next 100 are north american time 9-5 and the last 100 are asia time 9-5. this way you load / peak is spread accross multiple hours and your giving your customers equal service. ( the least active site off sets the most active sites cpu usage)
-Sqposter / Michael
arrty 11-05-2001, 11:25 AM Ok, now I think that this thread has come a long way since those "Are you crazy?" posts in the beginning. But the thread has proved beyond reasonable doubt that yes 1000 or 2000 domain 'CAN' be hosted on one server.
But this is not the end of the discussion and the problem is who will test it and how to test the limits of the server.
I do not have much web traffic on my servers so even if I wanted I could not 'test' it to its limits. So if anyone can test i'm sure we would all be anxoius to know about it.
I have decided to start hosting cheap sites on a server, but slowly so that when I see a decrease in server performance I will move some sites off the server to lessen the load.
Can anyone suggest any tools that could be used to monitor the following graphically:
- CPU Load
- CPU % Usage
- Memory Usage
- Anything esle that might help :)
This way we can once and for all decide for sure how much traffic and sites a server can host. This figure will be very accurate (I hope :))
cperciva 11-05-2001, 11:33 AM Originally posted by arrty
I have decided to start hosting cheap sites on a server, but slowly so that when I see a decrease in server performance I will move some sites off the server to lessen the load.
Can anyone suggest any tools that could be used to monitor the following graphically:
- CPU Load
- CPU % Usage
- Memory Usage
- Anything esle that might help :)
MRTG/rrdtool is good. You'll need scripts to put the data into the right format for MRTG, but that isn't hard.
|