This really exhaust me.
I had an nginx server with “proxy cache” on, the num of cache files is
almost 500K, and the files size are all near 50K. But now with just not
to 200 connections, the “load average” is almost to “3”, and the I/O of
cache disk is “1000KB/s”, and with lots of connections “TIME_OUT”. I
the $upstream_cache_status variable to the log, and in the result, 70%
not using proxy cache, 20% are missing and only 10% are hit.
But I had a same server with “proxy store” on, and the num of cache
also 500K. But on this server, even with 1000 connections, the “load
average” is never up to “0.3”, and the I/O for read is just up to
and all connections are in a “ESTABLISHED” or “FIT_WAIT” status.
My question is :
- Why with so less connections, the I/O is still so high?
- What other operation does “proxy cache” do opposite to “proxy
Aren’t they all look up the file, and: if found, read file from disk;
not, proxy to the upstream server? While in fact they are so
the “load average”.