Ps »tuning php

Blog - Linux, programozás, én!

Minden alkalommal, amikor megnyit egy oldalt dinamikus webes alkalmazások, web szerver utal PHP, ami betölti a kért .php fájlt, és az összes között, és a szükség, akkor értelmezi azt, fordít egy köztes bytecode (műveleti kód), és végrehajtja. És a folyamat nagy projektek tartalmazzák az összes olyan fájlokat tartalmaznak vehet egy nagyon hosszú idő.
Ezért sok PHP-Kesher fejlesztettek ki. A legnépszerűbb közülük - APC (Alternative PHP cache), XCache és eAcelerator. Mindegyikük lehetővé teszi, hogy mentse, és újra a lefordított PHP bájtkódot, amely időt takarít meg a szerelvény összes zárványok és összeállítása, takarít CPU és a memória (és nagyon sok). Ezen kívül, lehetővé teszi, hogy tárolja a cache PHP változók és elérheti őket a következő hívás forgatókönyvet. Az alábbiak közül melyik Kesher használat - nem különleges elvileg nem különböznek jelentősen a teljesítményt. Azért választottam, mert XCache ez nem panaszkodik a eAcelerator és én már dolgoztam APC, és nagyon érdekes volt kipróbálni valami újat

Tehát kezdjük. XCache telepítés nagyon egyszerű, de mégis:

A csomag telepítése php5-xcache:

[Codesyntax lang = "bash"] sudo apt-get install php5-xcache [/ codesyntax]

Szerkesztése config kiterjesztés PHP xcache.ini

[Codesyntax lang = "bash"] sudo nano /etc/php5/conf.d/xcache.ini[/codesyntax]

Van fix sorok:

opcode cache méretét. Tedd körülbelül 64 MB. Általában, ha van egy weboldal különböző PHP szkripteket a közé számos különböző, akkor meg kell, hogy egy magasabb értéket. Ha a hely csak egy - akkor hagyjuk a kis érték.
xcache.size = 64M

A gyorsítótár méretének adat / változókat. Ha ön használ ez xCache, aztán egy kicsit több, mint Kesher adatokat. Ha ön használ Memcached, majd állítsa 0
xcache.var_size = 32M

Meghatározza a processzorok számát (vagy magok) a számítógépen
xcache.count = 2

Győződjön meg arról, hogy van egy vonal
xcache.cacher = On

Mentse, indítsa újra a web szerver / php

[Codesyntax lang = "bash"] sudo /etc/init.d/apache2 restart [/ codesyntax]

Ps »tuning php

S.: Kesher leesett telepítése után Zend Debuger azzal az üzenettel: „Debugger összeállításához felvezető felülírva, nem lehet folytatni.” Természetesen ahhoz, hogy Kesher és debugger egy autó, de mindegy. Hogy ez fix ajánlott

[Codesyntax lang = "bash"] sudo nano /etc/php5/conf.d/zend_debugger.ini[/codesyntax]

A zend_debugger.expose_remotely irányelv határozza meg, hogy a hibakereső teszi ki magát (azaz jel jelenlétét) a távoli ügyfelek. Erre azért van szükség, ha szeretné, hogy a Zend Studio Böngésző eszköztár automatikusan észleli oldalakat, amelyek hibakeresése. Kiválasztás „mindig”, „soha”, vagy „allowed_hosts” (ez csak kiteszi a házigazdák a megengedett hosztlistára)

Ie megadja, hogy mely esetekben a Zend Debuger állít jelenlétét (via egyéni HTTP fejléc) .Such módon ez a lehetőség abban a helyzetben, „mindig”, de még megy dolgozni. Ez azonban nyilvánvalóan egy hiba, nem pedig egy funkciót!

Made xcache.size = 64M és 32M xcache.var_size = oldalon megy a „502 Bad Gateway». Nginx lehet állítani, mert ez?
Ha a változó értéke xcache.size és xcache.var_size a másik oldalon működik, de a php -v parancs megjeleníti mellett a standard kimenet:

php -v
/ Dev / zero: nincs elég hely az eszközön
Nem sikerült a fájl létrehozásakor mappping
PHP Fatal error: Failed fájl létrehozása mappping az ismert on line 0
PHP Fatal error: XCache: nem hozható létre shm az ismert on line 0

Általában amíg xcache.size = 16M és 16M xcache.var_size =, tehát nincs hiba. Még mindig kíváncsi, hogyan lehet megjavítani?

/ Dev / zero: nincs elég hely az eszközön

Talán nincs olyan eszköz a / dev / zero

Meg lehet próbálni, cseréje xcache.mmap_path = "/ dev / zero", mint xcache.mmap_path = "/ tmp / xcache"

Nos, akkor van értelme, hogy xcache.var_size nagyobb, mint 0 csak akkor, ha bizonyos funkciókat, pl xcache_set () xcache_get ()

Nem kell egy ilyen eszköz, ha fel a / tmp / nulla, amint a fájl elér egy bizonyos méretet (xcache.size + xcache.var_size) a weboldal 500. Nem számít, hogy mi fog xcache.size és xcache.var_size, bár az 1M egyébként.

Különösen ajánlott értékének növelése a kernel paraméter kernel.shmall
Az aktuális érték lehet
sysctl -A | grep kernel.shm

Jó az idő. Nem értem, mi a probléma. Minden találtam sozad host hkesh és elindított egy webes felületen ad egy csomó hibát itt ezen fajtája:

Undefined index: hiába a /www/xcache.local/www/admin/xcache.tpl.php on line 58
... ..

Próbált ásni php kódot, nem tudok rájönni. Hol megadhat egy további módja? Előre is köszönöm

Kapcsolódó cikkek