Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:66071 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 77738 invoked from network); 20 Feb 2013 19:26:29 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 20 Feb 2013 19:26:29 -0000 Authentication-Results: pb1.pair.com header.from=brendon@newgrounds.com; sender-id=pass Authentication-Results: pb1.pair.com smtp.mail=brendon@newgrounds.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain newgrounds.com designates 209.85.214.43 as permitted sender) X-PHP-List-Original-Sender: brendon@newgrounds.com X-Host-Fingerprint: 209.85.214.43 mail-bk0-f43.google.com Received: from [209.85.214.43] ([209.85.214.43:37205] helo=mail-bk0-f43.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id B6/CD-19387-46325215 for ; Wed, 20 Feb 2013 14:26:28 -0500 Received: by mail-bk0-f43.google.com with SMTP id jm19so3819199bkc.30 for ; Wed, 20 Feb 2013 11:26:25 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:cc:content-type:x-gm-message-state; bh=RXeMadV1QU52Ejs2FWyvpNycDFHR6jl8ocSi1rC7Lwg=; b=RHUNISCE4FIhsWcWHvHZj6ausZfre9AD+I8ZUsxE1pMyhBBGRm3HNyukkcz4x0ZaPg YXxvrKX0d7NOvIAlpfTAJmXjieaLwaf0zzhSxKmaaK89VCF2Ml2MwDrzQbxgfiVAJOb/ b8RhP+++tvK3oGnDTwNqN99W6O3QEe0p4Awos1xsZPNaP4TEhWgRTq/XI9PoOIE2L3Ha uhLFSpPOvRt92ZQ/IjpqOA0L4CTVeq4PnQRoZClrYlAoBUVQ7A8p75VXbF/Iw5qrvvNY vysubtgwMrqxwWp/iu6jLWjDASCFbr2T9q9lnA3CTXsOdDrtrbjA8Ag1qJso6oIGGkYU Jvng== MIME-Version: 1.0 X-Received: by 10.204.8.15 with SMTP id f15mr9310963bkf.88.1361388385548; Wed, 20 Feb 2013 11:26:25 -0800 (PST) Received: by 10.204.27.19 with HTTP; Wed, 20 Feb 2013 11:26:25 -0800 (PST) In-Reply-To: <5122C30F.5030309@ellisons.org.uk> References: <51229088.90306@lerdorf.com> <5122C30F.5030309@ellisons.org.uk> Date: Wed, 20 Feb 2013 14:26:25 -0500 Message-ID: To: Terry Ellison Cc: internals@lists.php.net Content-Type: text/plain; charset=ISO-8859-1 X-Gm-Message-State: ALoCoQmfVmFAr9vzLCGYjIR4WbNjtGlXw5s73nVbv9gPRp5FGqbdow9m+eZbgpj8HIPGWXH+iwYW Subject: Re: [PHP-DEV] PHP causing high number of NFS getattr operations? From: brendon@newgrounds.com (Brendon Colby) On Mon, Feb 18, 2013 at 7:10 PM, Terry Ellison wrote: > > Brendon, are your scripts doing a log of include_once / require_once calls? Yep, but we also changed our autoload script (auto_prepend_file) to use require instead of require_once, and we still saw the same behavior (open calls for the PHP files required by the auto_prepend_file same as before). > In you look at ZEND_INCLUDE_OR_EVAL_SPEC_CONST_HANDLER() in > Zend/zend_vm_execute.h then you will see that this Zend handler does > zend_resolve_path() for any xxx_ONCE instructions and zend_stream_open() on > the first request of the same. Yes APC rehooks this handler with a wrapper > but this is only for lazy loading. When it honors the xxx_once > instructions, it will still open the streams even if the code itself is > fully cached in APC and the I/O is entirely nugatory. I suspect that this > could generate the NFS traffic that you are discussing. Yes if the streams are opened whether cached or not, then this will result in an automatic getattr request to the NFS server which is exactly what we're seeing. Brendon