I'll disagree with your disagreement.
Many web servers maintain persistent connections. This leads to
eventually exceeding max_connections, even if connections are rare.
Once he hits 41, he will be issuing 404s, or other bad stuff.
Also, having 1000 http threads hanging around is a waste when you rarely
have 10 active at once. Or do your threads somehow take a long time
without taking much in resources (CPU, I/O, MySQL, etc)? If each of
1000 threads took only 1% of the CPU, the CPU would be overloaded, even
on an 8-core box.
On 3/27/12 10:38 PM, Reindl Harald wrote:
> Am 27.03.2012 23:24, schrieb Rick James:
>> MaxClients 1000
>> could overwhelm max_connections = 41 . Strongly recommend you decrease
>> MaxClients to less than max_connections
>> (not the other way around).
> totally wrong!
> not every http-connection implies a myql-connection
> a website typically contains a lot of static files
> down your httpd if MaxClients is set too low and
> you are unable to serve waiting clients
> additionally if KeepAlive is used there are open
> httpd-connections with NO db-connection after
> serving a dynamic page using one out of MaxClients
> for a timewindow based on KeepAliveTimeout
> MaxClients on httpd should never be lower than "max_connections"
> "max_connections" is primary a question of RAM and typical load
> [--] Total buffers: 2.4G global + 3.2M per thread (200 max threads)
> [OK] Maximum possible memory usage: 3.0G (37% of installed RAM)
> however - 1000 is much too high if we are speak
> about a preforked server on most hardware - keep
> in mind that a worker process with mod_php consumes
> some MB of memory in a typical environment
> but this is all not mysql related
Rick James - MySQL Geek