2012-06-21 9 views
29

Call to undefined method after upgrading to PHP 5.4.0 menzioni qualche APC bug-report da marzo 2012.Chiunque ha funzionato con traffico elevato con PHP 5.4.4 e APC 3.1.10?

La mia domanda concreta è: è PHP 5.4.4 (o giù di lì) stabile in combinazione con APC 3.1.10 (uscito nel mese di aprile, ma indicato come " beta "piuttosto che" stabile ")?

Vediamo 5 000 - 9 000 hit di cache di file APC/sec sui nostri box Apache, come un vago indicatore del livello del traffico. Funziona perfettamente con PHP 5.3.8 e APC 3.1.9 (usando mod_php) - qualcuno ha esperienza con traffico paragonabile su 5.4.4 e 3.1.10?

+0

La maggior parte delle nostre risorse non dinamiche sono fornite da proxy inversi diversi da Apache. Il nostro maggiore collo di bottiglia sulle richieste dinamiche è PHP, piuttosto che apache stesso. Ci sono alternative all'APC + Apache che dovremmo prendere in considerazione? –

+0

@Frank Farmer: Apache mod_php o FCGI? E direi che zerkms giocava un po '. – hakre

+0

@Frank Farmer: "Il nostro maggiore collo di bottiglia sulle richieste dinamiche è PHP" --- come lo sai? Hai profilato i tuoi script? Dubito che diverse implementazioni della cache di codice operativo potrebbero dare un aumento significativo (confrontandosi tra loro). E sono sicuro che il collo di bottiglia è il codice stesso, non la cache dell'opcode di fronte ad esso – zerkms

risposta

11

No. Ho provato già su un sito ad alto traffico. Segfaults male 3.1.10 circa il 75% del tempo o più a causa di danneggiamento delle stringhe. La versione del bagagliaio (dal 27/06/2012) è in qualche modo migliore ma ancora troppo instabile per noi per la produzione.

See: https://bugs.php.net/bug.php?id=62442

0

Primo: dare APC molta memoria.

Controllare la mia risposta non sapere come configurare APC What is causing "Unable to allocate memory for pool" in PHP?

Come hai detto, 5000 a 9000 colpi/s non sono informazioni molto affidabili, dipende da quello che è in esecuzione. Magento utilizza file 10k e genera molti hit per una visualizzazione di pagina.

Le migliori ottimizzazioni sono a livello di architettura. Prendi in considerazione l'utilizzo di proxy inverso e cache dell'applicazione per il tuo sito web.