Re: siege failing and so on
"Dmitry P. Schegolev" <[email protected]> Sun, 12 Oct 2003 20:50:06 +0400
| Newsgroups | gmane.comp.apache.metuxmpm |
|---|---|
| Message-ID | <[email protected]> |
- [email protected] --------------------------------------------------------------------- <snip> > So, Dmitry, could you try to run it again with a higher file-max? (echo > 1000000 > /proc/sys/fs/file-max or something like that) and see if it > resolves anything. Yes, I will try it tomorrow. I read the book "Linux Socket Programming", Sean Walton, and I have some questions within metuxmpm optimisation. 1. It clone many threads inside one process ~ 50 threads. Is it right way to serve concurrent requests? In the book, mensioned above, tells that many threads or processes result in bad server work: it must switch tasks and it's time consuming operation. Sean Walton write that 200 processes on one processor is critical value. If number of processes/theads >> than 200, processor all its time will waste on switching between tasks. If we have ~ 100 vhosts * 10 threads = 1000 clones. It's bad!? 1a. I set up in httpd.conf StartThreads 1 On each uid/gid pair it clones at least 3 instances of httpd. If we have ~ 500 vhosts it results in 1500 clones. What function carries out that instances? Can we configure httpd so that it has only one instance on uid/gid pair and can clone itself if it nesessary to number of threads <= MaxSpareThreads, and cut down itself if it stands idle? It' is nessesary to do so because on web-hosting providers many vhosts has very low number of queries per second. Ususally it's << 1. That hosts do not need many threads wasted system resources. 2. How do you think, what loss in perfomance we will get if we will pass all data from port 80 through multiplexer into httpd-unix socket? It will be about ~10% or more above? I think, that if we want a really secure web-server, it's nesessary to filter all data from port 80. Keep-alive is an example. a) Keep-alive on Even if we assume, that keep-alive in clients can be to only one vhost accoding to some standart, nothing prevent hacker to make his own "inplementation" of keep-alive. It will be a hole. b) If we forbid keep-alive at all, we will lose current apache functionality. And I think, that even in this case(keep-alive off) we can construct some schema to break security, because connection socket passes to vhost-httpd process and it close connection. So user can potentially manipulate with connection socket. Best regards, Dmitry.