I imagine there are many different solutions. Some sites do use full-on databases; others use flat files.
JavaRanch uses trained cows, each of which is tasked with remembering the contents of a single page. When a request comes in, one of our volunteers pokes the correct cow with an electric cattle prod, and the cow "moos" the page into a special microphone called a "cattle gateway interface" (CGI) using Moo-rse code. A computer translates the Moorse code into HTML and sends the response.
I would add that in the JIG Beginners forum, we are experimenting with alternative modes of triggering the cows -- using cookies rather than prods. The cows are rapidly gaining weight, placing some strain on the servers, but I still think it will be a viable solution.
"We're kind of on the level of crossword puzzle writers... And no one ever goes to them and gives them an award." ~Joe Strummer sscce.org
What?! You guys have electric cattle prods now? Back in my day as a bartender, we had to wrassle the steers to the ground and give a good tug on their tails to get them to moo up them pages.
Originally posted by Junilu Lacar: What?! You guys have electric cattle prods now? Back in my day as a bartender, we had to wrassle the steers to the ground and give a good tug on their tails to get them to moo up them pages.
For high-volume forums, most of the cows are accustomed to the traffic. It's kind of like riding horses at a resort, where the animals are so used to following the trail you can't steer them off if you try. Still, every once in a while, you get an ornery one...
"Content Management System" (CMS) is a broad term, and exactly what it includes depends on who you're talking to -- especially if you're talking to a vendor.
For example, I'm working on a CMS that uses rich text files as source material, allowing authors to easily create/edit using MS Word. These are stored in a Document Management System (DMS), which I developed as a Lotus Notes database. The DMS automatically retains old versions whenever an edit is made, keeps track of versioning and edit details, and allows for tons of metadata (online locations, access controls, sorting information, keywords, etc.) to be associated with the source files. When a file is ready to go online, it is packaged as a SOAP message to vendor software (which I think is mostly .NET) that transforms the rich text to XML (or depending on our settings, some other format, like PDF). All of the "bookkeeping" (where content ends up and what it replaces) is maintained in an SQL database. The transformed web content is sent to one of several Lotus Notes databases to be accessed by the user. These databases are web-enabled with a browser interface similar to "MS Help" (see MSDN Library for a general example -- although in our case, the interface looks more like a Mac ). We are using Lotus Notes because it fit well with our existing infrastructure and is cost efficient in our environment, although alternative database options could have been used instead.