[Zope] Zope or Python blocking on select()
David Swift
dswift at apmindsf.com
Tue Feb 8 05:29:00 EST 2005
Hello,
Running Zwiki 0.36 on Zope 2.7.4-0 on Python 2.4, glibc-2.3.4-3, kernel
2.4.22-nptl (fedora core 1).
Whenever we hit a ZWiki page, there is a delay of 8 seconds before the
first page is sent. Subsequent objects for that request are sent in
reasonable (i.e. sub-second) times. Every individual page request seems
to cause this delay. I have tried all 3 ways of setting the
LD_ASSUME_KERNEL variable, tried recompiling Python using the
'--with-lib=' option for the different thread libraries, tried Python
2.3.3, and all this still gives the same result - a nasty 8 seconds delay.
Has anyone else run into a delay like this? Is anyone using a similar
kernel/Python/Zope combination successfully?
I have pasted a brief excerpt from strace of my Python process, any
advice on what may be happening would be welcome.
The 8 second delay occurs after the select call '18:50:38.256285
select(16, [4 5 8 15], [], [4 5 8 15], {30, 0}) = 1 (in [8], left {21,
930000})'
Thanks,
David
6541 18:50:38.231673 recv(15, "GET /am/DesignIterationStories
HTTP/1.1\r\nAccept: image/gif, image/x-
xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash,
application/vnd.ms-excel, application
/vnd.ms-powerpoint, application/msword, */*\r\nReferer:
https://our.server.com/am/FrontPage\r\nAcc
ept-Language: en-us\r\nAccept-Encoding: gzip, deflate\r\nUser-Agent:
Mozilla/4.0 (compatible; MSIE 6.0
; Windows NT 5.1)\r\nHost: our.server.com:443\r\nConnection:
Keep-Alive\r\nCookie: zwiki_displaymo
de=\"simple\";
tree-s=\"eJzTyCkw5NLIKTDiClZ3hANXW3WuAmOuRKCECUjWFEnW2cQXJGvGlQiSNkeWMQbLWABlEhP1AO-ZFk
w\"\r\nAuthorization: Basic ZHN3aWZ0OjR0aGZsMDBy\r\nX-SSL-cipher:
RC4-MD5 SSLv3 Kx=RSA
Au=RSA Enc=RC4(128) Mac=MD5 \r\nX-Forwarded-For:
192.168.1.20\r\n\r\n", 4096, 0) = 729
6541 18:50:38.233418 gettimeofday({1107831038, 233651}, NULL) = 0
6541 18:50:38.235096 kill(6545, SIGRTMIN) = 0
6541 18:50:38.235658 kill(6545, SIGRTMIN) = 0
6541 18:50:38.253015 rt_sigprocmask(SIG_SETMASK, NULL, [RTMIN], 8) = 0
6541 18:50:38.253668 rt_sigsuspend([] <unfinished ...>
6541 18:50:38.254468 --- SIGRTMIN (Unknown signal 32) @ 0 (0) ---
6541 18:50:38.254928 <... rt_sigsuspend resumed> ) = -1 EINTR
(Interrupted system call)
6541 18:50:38.255248 sigreturn() = ? (mask now [RTMIN])
6541 18:50:38.255882 kill(6545, SIGRTMIN) = 0
6541 18:50:38.256285 select(16, [4 5 8 15], [], [4 5 8 15], {30, 0}) =
1 (in [8], left {21, 930000})
6541 18:50:46.331142 read(8, "x", 8192) = 1
6541 18:50:46.331775 select(16, [4 5 8 15], [15], [4 5 8 15], {30, 0})
= 1 (out [15], left {30, 0})
6541 18:50:46.332720 send(15, "HTTP/1.1 200 OK\r\nServer: Zope/(Zope
2.7.4-0, python 2.4.0, linux2) Z
Server/1.1\r\nDate: Tue, 08 Feb 2005 02:50:46 GMT\r\nContent-Length:
21296\r\nContent-Type: text/html;
charset=utf-8\r\nConnection: close\r\n\r\n<!DOCTYPE html PUBLIC
\"-//W3C//DTD XHTML 1.0 Transitional/
/EN\"
\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\n<html
xmlns=\"http://www.w3.org/19
More information about the Zope
mailing list