shared mem and panics when out of PV Entries
Igor Sysoev
is at rambler-co.ru
Thu Mar 27 01:45:55 PST 2003
On Wed, 26 Mar 2003, Andrew Kinney wrote:
> Eventually, I may be forced to turn off KeepAlive and make use of
If you disable keepalive I believe clients would not see much difference.
Keepalive is a good feature for clients but it should be enabled
if you have enough resources to support it.
It can be enabled on light-weight server that uses kqueue and designed
to handle the tens of thousands simultaneous connections. An overhead
per connection would be several tens of kilobytes or less.
A plain Apache without heavy modules spends hunderds of kilobytes of
physical memory per connection. mod_perl spends megabytes or tens of
megabytes of phycical memory per connection. In your untypical case
Apache spends about 1.5M per connection of a kernel memory.
> FreeBSD's accept filters
My measurements on the loaded enough web sites show that the accept filters
allow to save about 5-10% of Apaches. Of course they are the most effective
without keepalives.
But be sure use them only in between 4.1.1-RELEASE - 4.4-RELEASE, or
4.6-RELEASE and above. 4.5-RELEASE and -STABLE around have the syncache
related bug that leads to DoS.
> or put in a reverse proxy as you recommend.
I can even recommend you one proxy - mod_accel - http://sysoev.ru/en/
> For now, though, we are serving the whole gammut
> from this Apache. Static pages, images, mod_perl, PHP,
> Apache::ASP, and most anything else a customer might want or
> need to serve from a web server. I know it isn't the most efficient
> way to use Apache, but nobody has any complaints about
> performance at this point.
You have too much overhead per connection and if the worload would grow
you will have perfomance problems.
Igor Sysoev
http://sysoev.ru/en/
More information about the freebsd-hackers
mailing list