unresponsive cache and stats with a loaded cache

From: Oskar Pearson <oskar@dont-contact.us>
Date: Fri, 7 Nov 1997 15:08:24 +0200

--MimeMultipartBoundary
Content-Type: text/plain; charset=us-ascii

Hi

One of my caches just became quite unresponsive - here is
what a strace -f -c revealed... (It's not for a long period of time,
though, since I am afraid it's lagging squid)

cache1:
% time seconds usecs/call calls errors syscall
------ ----------- ----------- --------- --------- ----------------
 27.02 3.412204 131 26048 oldselect
 21.74 2.745975 1281 2143 open
 19.03 2.403282 261 9223 3 write
 11.46 1.447688 236 6126 61 read
  5.07 0.640746 309 2074 841 accept
  3.15 0.398042 132 3021 5 sendto
  2.63 0.332497 21 15667 gettimeofday
  2.41 0.304464 80 3807 close
  1.58 0.199040 16 12411 fcntl
  1.55 0.195968 245 800 socket
  1.47 0.185648 117 1580 809 connect
  1.18 0.149148 49 3038 20 recvfrom
  0.80 0.100649 20 5091 lseek
  0.32 0.040916 1137 36 getdents
  0.30 0.037978 31 1233 getsockname
  0.17 0.021185 26 800 setsockopt
  0.11 0.014438 1604 9 stat
  0.01 0.000675 75 9 dup2
  0.00 0.000051 51 1 bind
------ ----------- ----------- --------- --------- ----------------
100.00 12.630594 93117 1739 total

It appears that people are right about the 'open' being a
problem... Why are we calling 'getdents' anyway?

Instead of ASYNC-IO, though, couldn't we consider doing something along
these lines:

Yuo can pass a filedescriptor from one machine to another using Unix-Sockets
on almost all OS's... you could have a child process that you pass
files you wish opened to and it then passes the FD's to you
via unix sockets...

What thinks?

Oskar

--MimeMultipartBoundary--
Received on Tue Jul 29 2003 - 13:15:44 MDT

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:11:29 MST