Subject: RE: More Linux News hi Jack.. i disagree with a couple of your statements, but i'll try not to flog. that approach doesn't accomplish anything. > I don't think that Linux(or BSD)/mySQL/perl could handle it. this is the main thing i disagree with. at my former job, we were running more than 150 domains with moderate to high traffic on a single linux/Apache box, and the system utilization was almost nil.. i don't think we ever went below 95% idle time. i'd say you can host 250 low-use domains per machine without penalty, and could probably go higher. as far as databases go, i can see your concern. mySQL, postgres, and the other free database engines are adequate for low to moderate loads, but if you want high performance, you need a commercial product. OTOH, you /can/ get a decent amount of performance out of the free engines.. slashdot is running on linux/postgres/perl, and seems to be doing okay so far. it doesn't sound like you're expecting a load significantly greater than that at the start, so by the time you experience scaling problems, you should be able to find the budget for something commercial. remember, scaling doesn't just mean getting arbitrarily high performance out of the existing tools, it also means the capacity to move to bigger tools once you've outgrown the current set. as an aside, because someone rasised the question in a post a week or so ago, Oracle and IBM are at the top of the heap in terms of database engines, with the rest of the field quite a ways behind. the relation between SQL Server and Oracle is roughly the same as the relation between a pickup truck with a blade on the front, and a bulldozer. yes, you can point to pieces with the same names on either machine.. engine, blade, steering, etc.. but you really start to notice the differences when you need to flatten a mid-sized hill. > An acquaintence of mine, who is one of the key Apache > contributors, suggested that I look at PHP (which I used a few > years ago, but haven't been following it's development too > closely since then). PHP is a very flexible and powerful tool, which handles a lot of database interaction with relative ease. it hooks into Apache as a server module, so you don't have the cost of spawning and maintaining extra processes to contend with. it does have its performance overhead, but so does any dynamic system. not knowing exactly what you want to do, and not being a PHP guru, i can't offer anything specific. i can point you to PHP gurus if you need them, though. > Upon further questioning, he didn't think that PHP would do all > of the database caching/template compiling stuff that I really > need. He also is not familiar with CF, a problem I have been > having with almost every person I talk to who thinks that Unix > is the only way to go. this is the point where i'll get closest to flogging.. to put it in the most brutal and unflattering terms i can readily think of (just to get the worst of it over with), you sound a bit like a graphic designer trying to do HTML without Pagemill. (put the T-squares down, guys.. you *know* i don't mean anyone here..) i do apologise, Jack.. that was harsh. ;-) seriously, you've developed a great deal of familiarity with one tool, and the thought of losing it is unpleasant. the problem is that it's very easy to get wrapped up in comparing features, and to forget what makes those features valuable. the disease is especially insidious because 'familiarity' can also be considered a feature, and it's one no other product will have. the way to get around it is to look at the things that make the features valuable, instead of just using the name of the feature as a convenient shorthand for the value itself. specifically why do you need database caching and precompilation of templates? obviously, they're both related to performance speed, but what's their value in absolute terms? would an Apache/PHP server that can deliver the same number of pages in the same amount of time at equal or lower processing load be adequate? if you want clustered unix network designs which are highly robust and support arbitrary scaling capacity, i'll be happy to offer suggestions.. that's one of the things i do. i'm not precisely sure what you're looking for in terms of an application server, but i know how to use SSIs, HTTP proxying, and redundant DNS to farm processing out from a front-end machine to any of a number of back-end servers.. and all from a stock Apache installation. this post has gotten long enough that i won't go into the gory details (those of you who bet that i *don't* know how to shut up can pay up, and face the terrifying concept that this is *voluntary* behavior.. ;-), but i'll be happy to provide details if you want them.