Domain: aolserver.com
Stories and comments across the archive that link to aolserver.com.
Comments · 75
-
Re:What about AOLServer?
This is correct. AOLServer (the webserver behind aol.com, Digital City, etc.) is dual-licensed under the GPL and the MPL (Mozilla Public License). And it is an EXCELLENT webserver.
-
What about AOLServer?
The article seems to go off on a rant about AOL with Netscape, but neglects to mention that they purchased NaviSoft and then allowed NaviServer to be revamped as an open-source package. I have been using AOLServer with Oracle for a couple of years, and am totally in love with it. If I remember right, there was a request by Philip Greenspun of MIT to AOL to release AOLServer as open source, and they said agreed to it.
-
Interesting (but the OpenSource AOL Webserver...
Okay, I'll admit it. I thought your website was cute. But the link at the bottom to AOL's OpenSource (so they claim) free WebServer w/ built in TCL (http://www.aolserver.com/) totally floored me. I didn't even know they were putting something like that out.
How long has it been out?
Is it based on Apache, or is it their own brew?
Anyone have more info? -
ADP
There is an alternative that is already available on FreeBSD (and Linux) that rarely gets mentioned, and that is ADP (Aolserver Dynamic Pages). This uses Aolserver, an open source, multithreaded, and very fast web server that has a built in tcl interpreter with a very rich set of functions. ADP pages embed tcl scripts directly in html. You can also write
.tcl scripts that produce html for your pages.
I think the reason it is not so well known is because of the name (AOL?? Ugh!), and because tcl is not as popular as perl or python or whatever. -
Let's not forget...
-
TCL or AOLServerA couple of peices of code that I find pretty are TCL and AOLServer. I know there probably aren't many fans of these 2 products on slashdot of all places, but there both open source and beautiful to my eyes. Some of the highlights are
- Both follow meticulous published engineering standards documents found Here and Here.
- Both create an easy to use API for extending themselves in C.
- Both are great examples of how to keep your code flexable, many portions of this code would be useable in other projects.
- Navigation proves easy for both of them. it never takes me more than a few seconds to find the file and function I want to look at.
- Everything is well documented.
That being said, I'd also like to point out theres more to an open source project than just the code. A beautiful project includes docs (not just inline with the code), communications channels (mailing lists, newsgroups, etc.), useful examples, FAQs, etc. It takes alot of work to get these things to a useable state by the community. -
So, noone thought of TCL?
It's not just for GUI, you know
:)For a web-server you can have either:
- mod_dtcl in your Apache
- install NeoWebScript, which is an Apache with TCL and tons of TCL extensions
- use AOLServer -- don't let the name scare you, it is a highly-optimized multi-threaded web server. Its main features include database connection-pooling and a powerful Tcl API for application development
- install tclhttpd -- a web-server written entirely in TCL (with SSL support available), which works quite well for me
Your database may be MySQL or PostgreSQL (my preference).
PostgreSQL can be built with TCL support (a client library loadable into a TCL interpreter) and a server-side extension allowing you to write server-side procedures in TCL (not anemic at all, IMHO). Postgres can be built to support SSL connections and comes with pgaccess -- a fairly powerfull database browsing and management GUI-tool (written in TCL/TK).
For MySQL there are also at least two TCL-extensions that provide for TCL access to its client API:
For distributed objects, etc. you could use TCL-DP. Don't let the word beta scare you -- it does wonders. The remote ends can even talk over e-mail!
And there is nothing to beat TCL/TK for a cross-platform front-end application! That's a given...
-mi
P.S. It sucks that paragraph-tags can not have attributes in
/. comments. IMHO <p align="justify"> is perfectly valid and quite desirable for a paragraph with over 120 characters... -
Some comments on Monty's critique ...Right up front, I see this in his list of things that Postgres is poor at:
Since Postgres implements row-level locking, this comment makes no sense to me. And of course MySQL isn't at all good for running long multiple transactions - it doesn't support transactions at all. What's his point? ...running long multiple transactions where you get a conflict at the end (in this page/row locking is better)We here at MySQL has always tried to design very fair test that no one can misinterpret or lie about.
Their comparison table of Postgres vs. MySQL features has had many errors from the beginning, and despite requests from the Postgres folk Monty never corrected them. Thus Postgres users like myself remain unconvinced that fairness is uppermost in their mind.The way to set up the databases in a test is also very crucial for the performance of the database. The article doesn't mention anything about this or even with which ODBC driver they used the different databases
I just peeked quickly at MySQL's benchmark page and see absolutely no mention as to how they set up Postgres or the various commercial databases. It seems strange that Monty makes this complaint given that his page lacks this data, too.MySQL also have two ODBC drivers, one slow with debugging and one fast. It should be very nice to know how they actually did use MySQL. To get any performance from Oracle, on has also to tune this a lot; The ODBC driver for Oracle has also very bad performance; This is a common known fact; No one runs a critical system with Oracle and ODBC.
A poor ODBC driver - besides being a strange thing to brag about - might account for poor performance in single-user tests, but it doesn't account for the fact that MySQL progressively gets worse under load. Any driver penalty ought to be constant per query. MySQL falls apart under load, this is no secret, and the Great Bridge benchmarks should surprise no one.If the ODBC driver were the cause of MySQL's degradation under low, then the tests with (presumably) Oracle would presumably also show it degradating similarly under load. Which, of course, they don't. The "real" RDMBS systems scale reasonably well, while MySQL performance drops quickly as the number of simultaneous users increases.
As to why MySQL perhaps performs poorly in these tests under light load, another explanation might well be that even MySQL's benchmarks show Postgres beating MySQL on a JOIN test. Most real-world work with databases involve queries which JOIN tables, and the real-world benchmark suite used very likely penalizes a database engine which performs poorly on JOINs. As is the case with MySQL.
Of course, the "fair" MySQL tests on their benchmark tests are single-user tests. This doesn't represent the running environment most folks putting up web pages aspire to. When I put up a web site, I'm hoping for many simultaneous users, not just one. MySQL's "fair" tests hide the fact that MySQL falls apart under load by "fairly" not including tests with multiple users.
One thing that also is interesting is that they don't mention which PostgreSQL version they are using. It's very unlikely that they did actually test PostgreSQL 7.0 as this has at least one very fatal bug in the index handling which made it useless for benchmarks (at least when we did a test run on it).
They ran it using standard Postgres 7.0, which I and many other folks associated with OpenACS have been running for months with no problem.I hope Monty had the common courtesy to submit a bug report on this "fatal bug" they ran into.
Threads also gives MySQL better scalability than processes, that PostgreSQL uses, so we are very confident about the future.
Probably not particularly true under Linux, where the threads implementation isn't exactly stellar.It will speed start-up overhead, but anyone in their right mind using an RDBMS in a web environment uses persistent, pooled connections anyway and start-up time is in practice not an issue. The AOLserver database API supports persisten pooled connections in C, Tcl, Java and Python (the latter two are in pre-release form) in a database-agnostic way, so it's particularly not an issue if you choose your webserver intellegently.
The net result is that the posted test is about as wrong as you can do a test, the important thing is just to get the people that reads that page to understand that.
Given the crap that passes for comparative testing on MySQL's page, and the extremely misleading comments regarding the usefulness of transactions, foreign key constraints, etc, Monty should reflect upon the old saw "he who lives in a glass house should cast no stones". -
Re:angry emmettI agree. AOL has done a bit for free software including their awesome AOLserver web/application server.
-
Re:Which is it, guys?
I fear that AOL's management has cold feet about the open-sourceness of Mozilla, and has been sticking with NS4 because they are unable to make up their mind about what is worse- the open-source developer community or just letting Microsoft win the browser war once and for all.
I don't see a lot of substance to this idea, although it's been bought up more than once - if AOL were allergic opening the source to the community, it hardly seems likely they would have bought NaviServer and released it under the GPL. AOL have been on the GPL bandwagon for core parts of their infrastructure since before there was a bandwagon.
-
Re:Some language, any languageAOLServer (www.aolserver.com) is a free, "one-process-with-threads" web server whose strength is that it keeps open database connections that you can get a handle to as needed, so you don't have the usual overhead of spawning new processes, etc.--using the TCL API you'd say something like this:
set handle [ns_db gethandle]
Using ns_db with other arguments you then get to do your queries/inserts/etc (simplifying just a little):
ns_db $handle "select * from table"
ns_db dml $handle "insert into table (field1, field2) values ($value1, $value2)"
Then, when you are done, you just release the handle:
ns_db releasehandle $handle
Each AOLServer process can hold 8 database connections open.
AOLServer 2.3.3 is free, non-open source. AOLSerer 3.0 is free and open source, thanks to the efforts of Philip Greenspun and company.
Philip has written an intro to AOLServer that was published in Linux Today, it is now available in two parts here:
A quick quote from part 1: "AOLserver runs as a single Unix process. You can deliver the 20 dynamic pages per second of our example without your server having to start any new programs. If those pages need to connect to Oracle, they simply ask AOLserver to let them use an already-open connection from a configurable pool. Note that this ability to pool database connections is a consequence of AOLserver's one-process-with-threads architecture. With a process-pool Web server such as Apache, nothing stops you from linking in the Oracle C libraries. Your Apache server can then function as an Oracle client. However, there would be no way to share a database connection among Apache server processes. What's the bottom line difference? A site like http://photo.net can serve 700,000 hits per day, to about 120 simultaneous users at once, with one AOLserver process holding open eight connections to Oracle. That's a total of nine Unix processes (one AOLserver, eight Oracle). With Apache, providing the same level of service from photo.net would require 120 Apache server process, each of which held open two connections to Oracle: 360 processes total.
Another dividend from the single-process architecture of AOLserver is that you can cache stuff in AOLserver's virtual memory. For example, consider the Bill Gates Personal Wealth Clock (http://www.webho.com/WealthClock). It gets as many as two hits per second at peaks. Yet it relies on invoking CGI scripts running at foreign Web sites where they probably wouldn't appreciate getting hammered by my server. The solution is to cache the page in AOLserver's virtual memory. Again, this is something you could do with a process-pool server such as Apache but you'd be gradually building up 120 separate copies of the same data. "
Part 2 shows how to use the "ns_db" command that I mentioned above in some detail.
P.S. Philip Greenspun developed a great open source toolkit that sits on top of AOLServer called the Ars Digita Community System (aka the ACS) and wrote a book about it that is well known as a must-read for web-heads. It is on line for free, complete with all the photos:
Philip and Alex's Guide to Web Publishing
P.P.S. There's a version of the ACS available that uses the open-source Postgresql database, if you don't want to pay for Oracle: Open ACS (they have a working beta but are waiting for Postgresql 7 to come out before making an official release).
-
Re:obsequious
Mozilla is big, behind schedule, unstable, and now developed by mostly AOL employees (sorry guys, but face the facts). Sounds like Windows almost, doesn't it? Yet everybody is so willing to prop this baby up and say it will. Well, cut the future tense crap.
Sorry, I have to totally disagree with you on this one.
AOL makes good software when they want to, namely AOLServer, which is open source, free, incredibly stable and fast.
Mozilla has morphed from being a browser to being an application deployment platform. Using XUL, ECMAScript, RPF, XML, and advanced HTML/CSS, it will be possible to deploy advanced applications to end users, opening up new areas of exploration
This will also be another chink in Microsoft's armor. It is possible that Mozilla will become a de facto standard for future application development, due to it's flexibility, stability, and (hopefully) wide user acceptance.
My two bits. I really think this software has some amazing potential. But like all techology with potential, we will have to wait to see if these potentials are actually realized.
-Rev. -
Postgres vs. InterbaseTim's right, today Postgres is the best Open Source RDBMS out there (mySQL is not a true RDBMS and you can't even begin to talk about failover without atomicity), but Interbase will be "it" in a few months. Bitmead's wrong. Interbase implements more of SQL 92 than Postgres does, or will for at least several months. Outer joins, for instance, which have been under development for 16 months now and aren't even close to completion. Interbase is also faster, and once the threaded version is released later this year will probably scale better than Postgres. Both scale better than the non-RDBMS mySQL, with its yucky table-level locking and poor join performance - just read the posts in this thread to understand all the hacks mySQL users implement to get around such performance bottlenecks! There's really no excuse for such performance problems in a product that doesn't even support transactions.
Having said all that, I use Postgres for web work and within its limitations it works great. I haven't decided whether or not I'll switch to Interbase when it becomes Open Source - I've recently helped port a large web toolkit to Postgres and if outer joins ever do get implemented I'll be more than satisfied. And the extra speed of Interbase in the web environment I program in is somewhat offset by the poorer performance of the external driver used to access it vs. the internal drivers used to access Postgres or Oracle (we use AOLserver).
-
This is a *good* thing!
Blast away, if you will, but I firmly feel that any attempt to make getting online easier is a noble one. While the Slashdoterati are mumbling about how the Internet will change the world of communications, at the same time they wish to restrict it to themselves; rather than an open system with the free exchange of ideas from all comers, we would have a system of socially inept Linux zealots who never do anything but flame each other over the question of which distro is the best one. So, then let's compare what AOL had done to what the Open Source community has done:
AOL: hit one button, and you're online
Linux: Search for a PPP HOWTO, only to find that it was written in 1994 and is completely useless. Install any of the 50 or so "easy" PPP packages. Realize that none of them will work. Reboot to Windows, then hit the AOL button on your keyboard. Finally, you're online, no thanks to Linux.
And lest you think that AOL users are somehow not as smart as you because they don't use a "real man's operating system" (a joke at best; real men kill defenseless animals to prove their masculinity), or that they are less internet-"saavy", let me clue you in. If Slashdot ran on AOL, it wouldn't have half the problems it has now. Why, you ask? Because AOL has a little thing called the Terms Of Service (TOS, and before some geek asks, it has *nothing* to do with Atari). If a user violates the TOS, for example by uttering an obscenity, or taking the Lord's name in vain, then they can be kicked of AOL permanently, or be charged a hefty fine. Imagine if everytime you let loose a stream of profanity when someone questioned your choice of programming languages, you got slapped with a $100 fine. Charged directly to your credit card, so there's no way to complain. I bet all that IPO money would disappear pretty quickly, eh? To put it bluntly, you don't fuck with AOL.
Now, as for the level of intelligence of the average AOL user, you'll find that people from all walks of life use AOL to be connected with the world. Poets, artists, teachers, writers, and celebreties all call AOL home online. Compare this to places like Slashdot in which everyone is a foaming Linux zealot. How would you rather spend an afternoon: discussing important issues in art, politics, and philosophy, or flaming each other over who is the most 31337? Making life-long friends or putting up with clueless FreeBSD trolls? Again, the OSS community comes up well behind AOL.
Lastly, so many of you seem to overlook AOL's contributions to the Open Source community. While AOLServer has always been open source, CmdrTaco had to be badgered constantly for almost a year before he released the Slash code. Who can claim the moral high ground now? In fact I have looked at the source code for both projects and concluded that Hope College has no qualms about leaving their graduates without the most basic fundamentals of programming. I was literally shocked when I saw how many goto's Mr. Malda had employed. Compare this to the elegant code of AOLServer, much of it written by MIT professors. Again, your 'community' simply doesn't hold up.
Feel free to turn your brains back on, now that I'm done bludgeoning you with the brutal facts. I am well aware that the most rabid zealots among will cling to their blind faith, ignoring even the sound of the walls collapsing around them. But I hope to reach the more reasonable Slashdot reader, the one who gave up on the Amiga and filters Katz stories. To him I will say that Linux must learn from AOL. Linux needs friendly greetings, easy to use channels, and builtin chat rooms. A 'Favorites' folder would allow users to keep track of things more easily, and a standard ISP would reduce dialup connection setup woes. Usernames would move beyond the standard three letter initials to more descriptive names like 'Horny4u' or 'CoolDude3949291'. The entire system of text-based consoles is obsolete: there is nothing that you can type that can't be done faster with mouse clicks. Finally, 'keywords' could be assigned to popular Linux resources, web sites, and applications. Thus, rather than having to remember that in order to run the Gimp, you need to type a cryptic command like 'gimp', they would simply enter 'GNU Image Manipulation Program' into the keywords box. This is the sort of advice you would normally get by paying an expert like myself, but in the spirit of 'free beer', I am offering it to the community.
If Linus Thorwalds is reading this, you should really consider these propositions. If you want more help, call me and we'll discuss my rates, and maybe more about your Linux program.
-
Re:company failing -> embrace Open Source -> FAIL!
Well, you're almost right.
The only company I know of that's making money hand over fist, and all the while giving away all their source code, is ArsDigita. They do a lot of work with AOLserver, but more importantly, their ArsDigita Community System is totally open and free to anyone. Their angle: it takes a smart (and well-paid) group of people to apply these tools to a client's needs (also, there's a lot more to web development than code).
-
Re:there is no scalability problemReally!!! Megabuck Sun server hardware/os + free AOLServer (but not open source) + megabuck Oracle DB = "LOGIC ERROR"
Actually, AOLServer version 3.0 will be open source. Betas are currently available for download. The code is available both under the AOLserver public license (basically the Mozilla License) and the GPL.
As for the expensive Oracle license: When the OS world produces an RDBMS of similar quality to Oracle, I'm sure many people will consider switching.
And as for the expensive hardware: Well, yeah. You don't run a site of any significance on a generic beige box, and that farm of generic beige boxes you're contemplating isn't cheap, either.
-
Re:there is no scalability problemReally!!! Megabuck Sun server hardware/os + free AOLServer (but not open source) + megabuck Oracle DB = "LOGIC ERROR"
Actually, AOLServer version 3.0 will be open source. Betas are currently available for download. The code is available both under the AOLserver public license (basically the Mozilla License) and the GPL.
As for the expensive Oracle license: When the OS world produces an RDBMS of similar quality to Oracle, I'm sure many people will consider switching.
And as for the expensive hardware: Well, yeah. You don't run a site of any significance on a generic beige box, and that farm of generic beige boxes you're contemplating isn't cheap, either.
-
Some links pertinant to this commentSome links you might find useful are:
- Phlip and Alex's Guide to Web Publishing
- Web Tools Review
- ArsDigita Server Architecture
- Free One Day Web Courses
- ArsDigita Community System - An opensource toolkit for building database driven websites
- Web Nerds Bookshelf
- Photo.net discussion forums
- AOLserver
-
switch to...
AOLserver if you're not many apache-specific things. php4 allegedly works with it.
-
Re:colocationThis is the option I went with to start my on-line auction hosting web app:
I didn't want to spring all the coin for an office, [T1|T3], servers and all the nonsense that goes along with it. Especially as I didn't know if the idea would work or even what it would take to get it going (I'm good on the geek stuff but am picking up the business stuff as I go). I work from home as a consultant and have a regular income but no large wad of sheckles to jump off the deep end right away. So I figured I'd dip my toes in first to test the water. My rationale was that if it took off I could always get the offices with picture windows looking over the harbor and a net connection as big around as a firehose. But if I borrowed a bunch of money to put the carriage before the horse, the clock would be loudly ticking from day 1.
My first thought was to run the web server from my home over my cable modem but I got some pretty bad vibes off the Roadrunner gal when I called her. She knew what kind of antics I was up to and was not too forthcoming with a static IP address so I moved on.
I decided on AOLserver as my server platform after poking around and finally reading Phil Greenspun's So you want to join the world's grubbiest club: Internet entrepreneurs. It is a free (beer and speech) web server that plays nice with different databases, runs on Linux (and other Unices, but not NT) and has some groovy web-based admin features (at least it did til they went open source... but I digress). I found an outfit that would set me up on one of their boxes with a shell account and my own server process (I think a flower shop also has a couple of static pages on the same box, but they are good neighbors and don't make much noise). The price was very reasonable, certainly within the range that if it was a total flop I would consider the money well spent on the experience gained. I'd imagine that if I cashed in my 401(k) and borrowed a bunch of money off of friends and family and it flopped I would be rather bitter. This way I got the chance to design and develop my software in a pretty pressure-free environment which was nice. Oh, and the guys that run the hosting deal do all my backups for me (at least they tell me that they do
:) ).The setup I've evolved is that one of the Linux machines in my office (at my house) is my development platform. It is configured as closely as I can get it to the one at the hosting service. Since the application is live now, I do all my development on this machine, test everything out and then check it into CVS. I then telnet over to the live machine and update the tcl scripts over there. It seems to work out well, I always have the most up-to-date code on opposite ends of the continent and there is a minimum of disruption to the service.
There was certainly a lot more to the process than I suspected when I first started on this back in January. While I was able to design and build a rugged application in the time that I allocated, other things like marketing, support and all the other parts that go into making a business go are a new challenge. I'm not pulling the all-night code-a-thons like I was in the first six months but there are always new challenges popping up.
On the whole, I don't know if this was the way to go as the story is really just starting. From what I hear in other discussions here and elsewhere there aren't that many big piles of money lying around for geeks with little business experience and a good idea so I'm not sure as I had much of a choice. I *have* heard stories about people with good ideas wasting a lot of time chasing this money, only to have it yanked away at the last minute so I've just steered clear of it for the time being. I guess I am at a point now that I can start looking around for a CEO and the rest of a team that can take me to the next step.
As far as advice goes, I can only suggest you go for it. Read forums like this (I really enjoyed the VC
/. discussion a while back) but take what you get here with a grain of salt. People who advise you as to particular machine configurations obviously have already completed the long journey to having a successful business or (more likely) are just working for someone who has and only see the finished product. You have a lot more important things to worry about than how much memory your webserver has! Your development environment is a biggie and is worth spending the time to get something you are comfortable with (php seems pretty sweet, and no-one can talk bad about the old PERL/Apache warhorse).Me, I'm just kind of making it up as I go along. I'm not getting crushed with hits yet, though traffic has been increasing as I get the hang of the marketing thing (left to my own devices I would rather code than talk on the phone). My site has a solid revenue model and the backend design can be tweaked to fit lots of different applications if I decide to follow the gourd rather than the sandle. I currently haven't had to give any of it away to keep it afloat. I have had to push back my IPO schedule a bit though.
;) I've been promoted from "geek with good idea asking for advice" to "geek with nifty web application". Now for the next step up to "stinky rich geek with Ferraris and tropical island". Hmmm. -
Do you want it done good, or best?
Perl does a lot of things well. A lot of things do specific things that Perl does better.
Reasons why Perl is dominant:
- It's good enough
- Everyone knows it
- It's very well documented
- It's easy to pick up
- It's powerful once you get to know it
- It's a bit like C, only nicer
Using C or C++ for CGI scripts will not give you the performance gains you might think. We are no longer talking about mega-applications which are highly CPU-bound. This goes double if you make sensible use of the built-in functions in Perl, which are themselves written in C.
Rather, you are more likely to come across one of these bottlenecks:
- Forking a process or two for every single web request
- Disk I/O
- Network I/O
In real life that means: the amount of runtime that could be saved by writing the script in a compiled language is dwarfed by other factors - notably the effort of context-switching an entire program in and out every time the script is called. This is a fundamental problem with CGI, and a big one if you want all or most of your site to be dynamic.
So where do you turn from here? Well, chuck CGI and build the scripting language into the web server. This isn't as painful as it sounds. The obvious one is mod_perl for Apache - but Perl, though cool, is BIG and you do not necessarily want a half dozen copies of it resident in memory at all times.
My favorites - and I use these all the time these days, are:
Don't be put off by the name! AOLserver used to be called Naviserver, until the company was bought out by you-know-who. It's a rock-solid web server that I've been using it for years. Its embedded scripting language is Tcl, which is not fun to debug, but is extremely elegant once you are used to it.
There are others, but speaking from my own experience these two have allowed me to turn entire sites dynamic that would not otherwise have been possible - usually hobby sites that are running on old and donated hardware.
Dave
-- -
Re:Few idle wonderings
Incidentally, AOL has just recently released their AOLserver that they run all their sites with under a NPL clone. It took them a while to release it because they wanted to clean it up before they released it for general consumption. Its pretty nifty, check it out at http://www.aolserver.com
-
AOLserver for example (now open source)
AOLserver has always had very good database integration. With v.3 now open source this is a very smart choice for database backed web sites. There are drivers for a number of databases (including postgres). Scripting is done with TCL or ADP pages (similar to PHP and ASP).
-
Details:
More info about the AOLserver can be found at http://www.aolserver.com/
-phazer -
A word about application servers
Ok, some of you people really have got to get off of this Java app servers over everything else kick. Lots of clueless people seem to be implying "Well, some sites use lowly scripts to run their sites but we're special. We need JAVA for our super-duper, highly-scalable, object-oriented, five-tier, dynamic xml-parsed 'solution'." Grow up. Many of the most trafficked sites use Perl, PHP, Python, Tcl, and sometimes C. Is your site going to be more popular than any of these?:
www.deja.com
www.imdb.com
www.hotmail.com
www.yahoo.com
www.photo.net
www.digitalcity.com
www.villagevoice.com
www.metacrawler.com
slashdot.org
Telnet to port 80 on these sites or use Netcraft's "What's that server running?" feature to see what these guys are using if you don't believe me.
Don't believe the hype and marketing around application servers. They are for corporate IT departments who don't know better and want to appear sophisticated (and I say this because I work in said clueless environment). Don't believe your hack CS205 professor who pimps OO as the end-all be-all of programming. OO is nice but it's not a panacea for bad design. You can program just as brainlessly with Java as you can with Perl. And for those of you who bitch about Perl's syntax. What exactly is it about Perl that bug's you? Lack of typecasting? Gosh, "use strict;" is hard to type. Messy syntax? Yes, you can write ugly code with Perl but the same can be said for any language. Perl is just more lenient than most. I can't understand people who don't appreciate leniency in a language when you are trying to release a dynamic functional site in a couple of weeks. Sure, we'd all like to make pretty programs at work but sometimes we need them to get out there ASAP and with as little overhead as possible (those of you who can't appreciate this are still in school and haven't dealt with competitive deadlines or you just don't see what a competitive advantage being first and scalable on the web gives you).
Name one commercial app server that scales as well as the open-source combos. Kiva server was a complete piece of doo-doo. Oracle Application Server? Yeah, right, it was so good that Oracle stopped using it for their own site. Some will argue that app servers are necessary because they support transactions, failovers, etc. You can encapsulate most of this in the db without burdening your web developers. If you really need these features then you should consider looking at your design again and seeing if you can simplify it. In my opinion they are not necessary for 99% of the problems you'll run into.
For people who would like another opinion on why commercial app servers suck read this:
www.photo.net/wtr/application-ser vers.html
For those who'd like to read about one possible open-source solution (the same one that slashdot uses and my personal favorite):
perl.apache.org/stories/
Other good environments:
www.php.net
java.apache.org
www.aolserver.com
www.python.org
For those of you who push Java app servers over everything else: why don't you write down a list popular sites (your intranet or school projects don't count) which are using them and give examples of the hardware necessary to keep it going. I'm excited about the Apache Java project (look at above link) but everything else is just marketrdroid talk until there are results.