Hi everybody

We've just put into service a set of web applications running under tomcat which works as a sophisticated podcast server.

We deliver several thousand podcasts a day of about 20MB to 70MB in size. Originally when we started we used an Apache server (because it worked... just...) However it was clear to me that this was a poor solution for large volumes of traffic -- and I was right!

So I have written a specialized http server which has the following features:

1. Adaptive rate-control algorithm which balances the load on a per-request basis to optimize the number of simultaneous requests to be serviced. The algorithm is 'pluggable'

2. Easy clustering of servers (no session state) to make it scalable.

3. Sophisticated logging to allow the easy generation of detailed reports on download activity.

4. JMX management.

5. A black-list scheme to mitigate badly written mulitmedia bots which can easily swamp a server.

6. A simple content management system to manage the import of media files.

Although it is originally designed for use with mp3 files, it should work with any large media files or data downloads.

The next stage of this project is to add a database controlled ad insertion facility which would insert sponsorship messages into the outgoing stream on a pre request basis.

We are considering making this an open source project. If people think that this would be of interest to them to use, or if they might like to join the project, then please email me off-list at the following (substitutions obvious)

alan  "A" + "T"  writingshow dot com

So far I have only deployed this on Tomcat, but it is just a set of standard servlet 2.5 wars and should work on other containers.

Currently it is running on a dual core opteron. Even at heavy loads the CPU utilization is low and it only needs about 100MB of heap to support 100 simultaneous connections. (which could represent 7GB of download)

It is written using Spring and Hibernate (and a lot of other wonderful open source projects)


Regards

Alan Chaney









---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to