hacking linux for web servers

Andreas Jellinghaus (urcr@rz.uni-karlsruhe.de)
Thu, 18 Dec 1997 21:45:40 +0100 (CET)

my problem with web servers is : the web server has to run,
but people can run any cgi script they create. security problems are solved,
and the usual limits also help a lot.

i have two problems:
a) some people run very many cgi scripts (one per html page or so).
most don't take much resources, but the number slows down everything.
b) small scripts, that reads very much data and does nothing with it.
this creates huge load averages with 93% idle : no matter how good your
scsi hardware is, people always need more io than you can provide.

i solved a) with a writing a sheduler on my own (time is not given to
processes, but to users. if you have many tasks, they all slow down. only
tasks are affected, that have use my new scheduler (will not affect root,
apache ...). patch available on demand).

but i found no solution for b) yet. maybe someone has an idea ?
the problem is that several tasks create much io but need no cpu time,
and all other tasks have a hard time reading something. i'm looking for a
good place where i can give normal tasks io priority over my "bad" tasks.