Re: Zend Optimizer+ Source Code now available
| From: | Rasmus Lerdorf | Date: | Sat, 23 Feb 2013 03:57:07 +0000 |
| Subject: | Re: Zend Optimizer+ Source Code now available | ||
| References: | 1 2 3 4 5 6 7 8 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-66167@lists.php.net to get a copy of this message | ||
Hey Dmitry, I noticed today that ZO+ doesn't make use of sapi_get_stat()
to get the initial stat struct from the sapi if available. So, if you
have top-level a.php that includes b.php and c.php you end up with:
stat("/var/www/a.php", {st_mode=S_IFREG|0664, st_size=49, ...}) = 0
stat("/var/www/a.php", {st_mode=S_IFREG|0664, st_size=49, ...}) = 0
stat("/var/www/b.php", {st_mode=S_IFREG|0664, st_size=10, ...}) = 0
stat("/var/www/c.php", {st_mode=S_IFREG|0664, st_size=10, ...}) = 0
whereas with APC you have:
stat("/var/www/a.php", {st_mode=S_IFREG|0664, st_size=49, ...}) = 0
stat("/var/www/b.php", {st_mode=S_IFREG|0664, st_size=10, ...}) = 0
stat("/var/www/c.php", {st_mode=S_IFREG|0664, st_size=10, ...}) = 0
That initial stat on a.php is done by Apache and because ZO doesn't grab
that existing stat struct from the sapi it has to re-stat the top-level
script.
Was this an intentional thing to leave out or just an oversight?
-Rasmus