XCache instalacija, xCache konfiguracija, nijanse. Keširanje PHP bajtkoda sa XCache xcache cacher opcijom 1 je potrebno isključeno

XCache instalacija, xCache konfiguracija, nijanse.  Keširanje PHP bajtkoda sa XCache xcache cacher opcijom 1 je potrebno isključeno

.
Proces instalacije je vrlo jednostavan:

# wget http://xcache.lighttpd.net/pub/Releases/1.3.1/xcache-1.3.1.tar.gz
# tar zxf xcache-1.2.2.tar.gz
# cd xcache-1.2.2
#phpize
# ./configure --enable-xcache
# napravi && napravi instalaciju

Ali nije prošlo bez nepredviđenih poteškoća. Prvo, phpize isprva nije pronađen. Kako se ispostavilo, bilo je potrebno instalirati php-devel paket ( #yum install php-devel). Drugo, došlo je do greške u fazi sastavljanja - kompajler se žalio na nedostajuću datoteku zaglavlja timelib_config.h. Nakon kratke pretrage na Google-u, rješenje je pronađeno: u fajlu /usr/include/php/ext/date/lib/timelib_structs.h trebalo zamijeniti

#include

#include "timelib_config.h"

Dalja montaža i montaža protekli su bez problema. Ostalo je samo da dodam postavke za XCache u /etc/php.ini (bez previše razmišljanja, uzeo sam ih iz članka na koji sam dao link iznad, samo sam u zend_extension redu putanju zamijenio svojom: /usr/lib/php/modules/xcache.so).

Nakon toga sam provjerio funkcionalnost PHP-a komandom php -m i sve je radilo!

Onda je ostalo samo da ponovo pokrenete Apache i uživate u efektu. Trud je bio vrijedan toga: stranice su počele raditi brže (međutim, to mogu samo subjektivno ocijeniti, nisam izvršio precizna mjerenja) i trošile su manje memorije. Konkretno, moj TextCMS umjesto 320 Kb po stranici počeo je trošiti samo 120!

Primjer podešavanja parametara:

;; instalirajte kao zend ekstenziju (preporučeno), obično "$extension_dir/xcache.so"
zend_extension = /usr/local/lib/php/extensions/no-debug-non-zts-20060613/xcache.so


xcache.admin.enable_auth = Uključeno
xcache.admin.user = "mOo"
; xcache.admin.pass = md5($vaša_lozinka)
xcache.admin.pass = ""


; samo ini postavke, sve vrijednosti ovdje su zadane osim ako nije objašnjeno
; izaberite implementaciju šeme shm/alokatora niskog nivoa
xcache.shm_scheme = "mmap"
; za onemogućavanje: xcache.size=0
; da omogućite: xcache.size=64M itd (bilo koja veličina > 0) i vaš sistem mmap dozvoljava
xcache.size = 32M
; postavljeno na broj procesora (cat /proc/cpuinfo |grep -c procesor)
xcache.count = 1
; samo heš nagoveštava, uvek možete pohraniti count(items) > slots
xcache.slots = 8K
; ttl stavke keša, 0=zauvijek
xcache.ttl = 0
; interval gc skeniranja isteklih stavki, 0=bez skeniranja, ostale vrijednosti su u sekundama
xcache.gc_interval = 0
; isto kao gore ali za varijabilnu keš memoriju
xcache.var_size = 0M
xcache.var_count = 1
xcache.var_slots = 8K
; default ttl
xcache.var_ttl = 0
xcache.var_maxttl = 0
xcache.var_gc_interval = 300
xcache.test = Isključeno
; N/A za /dev/zero
xcache.readonly_protection = Isključeno
; za *nix, xcache.mmap_path je putanja datoteke, a ne direktorij.
; Koristite nešto poput "/tmp/xcache" ako želite da uključite ReadonlyProtection
; 2 grupa php-a neće dijeliti isti /tmp/xcache
; za win32, xcache.mmap_path=anonimno ime mape, a ne putanja datoteke
xcache.mmap_path = "/dev/nula"
; ostavite prazno (onemogućeno) ili "/tmp/phpcore/"
; uvjerite se da je moguće pisati putem php-a (bez provjere open_basedir)
xcache.coredump_directory = ""
; postavke po zahtjevu
xcache.cacher = Uključeno
xcache.stat = Uključeno
xcache.optimizer = Isključeno


; postavke po zahtjevu
; omogući prikupljanje podataka o pokrivenosti za funkcije xcache.coveragedump_directory i xcache_coverager_start/stop/get/clean() (škodit će performansama izvršenja)
xcache.coverager = Isključeno
; samo ini postavke
; provjerite je li čitljiv (care open_basedir) skriptom preglednika pokrivenosti
; zahtijeva xcache.coverager=Uključeno
xcache.coveragedump_directory = ""

Kao što znate, PHP je interpretirani jezik, tj. svaki put kada se pristupi skripti, skripta se kompajlira. Ako imate 1 skriptu, onda nema razloga za brigu, jer vrijeme kompilacije nije dugo. Ali u modernim CMS-ima i okvirima, kada se prikazuje stranica, koristi se 10-300 zasebnih php datoteka (drugim riječima, uključuje). Što je više inkluzija i što su teži, proces kompilacije traje duže.

Da bismo riješili ovaj problem, došli smo na ideju da kompajliranu verziju skripte pohranimo u memoriju. Postoje posebni moduli za pohranjivanje prevedenog koda u memoriju. Zovu se akceleratori.

Najpoznatiji: eAccelerator, APC, XCache. Svaki ima svoje prednosti i mane. Koristim XCache kao najbrži i najpouzdaniji. Iako svako ima svoje mišljenje o pouzdanosti.

Neki akceleratori vam omogućavaju da pohranite ne samo skripte u memoriju, već i rezultate proračuna. Na primjer, uzorci iz baze podataka. U praksi, ovo izgleda nešto poput pohranjivanja keša u Memcache. Ali ja koristim Memcache - ovako se to istorijski dogodilo.

XCache admin

XCache ima mali admin panel za prikaz statistike i resetovanje keša. Obično se nalazi ovdje /usr/local/share/examples/xcache/admin/. Stoga morate premjestiti ovu mapu negdje u korijen stranice ili na vaš admin panel kako biste je mogli vidjeti iz pretraživača. Možete preuzeti admin panel.

Ovako to izgleda za mene

Prva tabela prikazuje opštu statistiku. Sadrži 2 reda, pošto imam 2-jezgarni procesor i XCache distribuira keš memoriju na obje jezgre. Ukupno imam 512 miliona alociranih.

Administrativni panel može prikazati grešku Fatalna greška: xcache_count(): xcache.admin.user i xcache.admin.pass
To znači da imate omogućenu autorizaciju u xCache konfiguraciji.
Najlakši način je da ga isključite. Sam sam na svom serveru i ne moram da postavljam lozinke unutar servera.
Autorizacija je onemogućena u konfiguraciji xcache.admin.enable_auth = Isključeno

xCache konfiguracija se obično nalazi na /etc/php5/conf.d/xcache.ini
Nakon uređivanja konfiguracije, potrebno je ponovo pokrenuti Apache.

xCache Statistics

Vratimo se na admin panel (pogledajte sliku iznad).

Slots- broj keš slotova. Ovo je moje razumijevanje na koliko dijelova je podijeljena memorija. U mom slučaju to je 8000. Što je ova vrijednost veća, to je brža pretraga, ali je potrebno više memorije.

Veličina- veličina memorije za XCache

Avail- koliko je memorije ostalo. Očigledno mi nije ostalo. Svih 512 Mb je popunjeno

Jasno- dugme za resetovanje keša

Hits- koliko je pristupa fajlu napravljeno

Gospođice- koliko je poziva na datoteke obavljeno, ali ti fajlovi nisu bili u memoriji. Ovo je normalan proces. Fajlovi se mijenjaju - lete iz keša. Ali u mom slučaju, svi fajlovi jednostavno ne stanu u memoriju, tako da ih nema, a samim tim i propusta.

Klompe- ovako ja razumijem koliko puta smo išli u keš za neke fajlove, ali u to vrijeme ti fajlovi su se još kompajlirali, tj. došlo je do blokade.

OOMs- koliko puta datoteke nisu bile uključene u keš memoriju zbog nedostatka memorije.

Spremljeno u privremenu memoriju- broj datoteka u kešu. Ukupno imam 6400 fajlova.

xCache postavke

Nekoliko riječi o tome koliko memorije treba dodijeliti. U početku sam izdvojio 128 Mb, ali se ova memorija popunila za 10 minuta. Stoga sam dodijelio 512 Mb i ovaj volumen je već bio popunjen za 1 sat. Čini se da biste mogli dodijeliti 1 Gb i tada bi se sve sigurno uklopilo. Ali postoji samo 4GB memorije i bolje je to dodijeliti za MySQL (više o tome). Štaviše, datoteke koje nisu keširane u roku od sat vremena su rijetko korištene skripte. Jednostavno postoje stranice koje posjećuje 10-100 ljudi dnevno i možete bez keširanja. Ovo je takozvani "dugi rep", koji se rijetko koristi, ali zauzima puno prostora. U mom slučaju to je 3% (promašaji/pogoci).

Šta još ne treba zaboraviti. Recimo da ste promijenili neki kod na velikom projektu. Memorijski prostor je oslobođen i datoteke projekata malog obima mogu se upisivati ​​u ovaj prazan prostor. Shodno tome, datoteke velikog projekta neće biti keširane. Jednostavno rečeno, XCache NE zna kako da prati koji fajlovi mogu biti izbačeni iz keša i češće traženi fajlovi se mogu postaviti na njihovo mesto (ovo je tzv. „vruća“ keš memorija). Zbog toga morate ručno resetovati keš memoriju preko administrativnog panela.

Donja tabela pokazuje koji su fajlovi keširani i koliko efikasno.

Hits- broj poziva ovoj skripti u memoriji. Što veće, to bolje. Ako je za neke datoteke ova vrijednost duže vrijeme manja od 10, onda se ova datoteka rijetko koristi i samo zauzima prostor u memoriji.

Veličina- veličina ove datoteke u memoriji. Evo najzanimljivijeg dijela. Ispostavilo se da kompajlirana datoteka zauzima 10 puta više prostora u memoriji nego na disku. O MOJ BOŽE!

SrcSize- veličina datoteke na disku

Pristup- prije koliko vremena je pristupljeno ovoj datoteci

Stvoriti- koliko dugo je ova datoteka bila u kešu

Moja konfiguracija
xcache.size = 512M
xcache.count = 2
xcache.slots = 8K
xcache.ttl = 0
xcache.gc_interval = 0
xcache.var_size = 0M
xcache.var_count = 2
xcache.var_slots = 8K
xcache.var_ttl = 0
xcache.var_maxttl = 0
xcache.test = Isključeno
xcache.cacher = Uključeno
xcache.stat = Uključeno

Kao što vidite, onemogućio sam upotrebu XCache-a za keširanje rezultata proračuna (xcache.var_size = 0M). Za ovo imam Memcache.

Pa, stvarni rezultati: ubrzanje za 2-3 puta. Ako je ranije stranica bila generirana za 0,3 sekunde (uključujući Memcache), sada je potrebno 0,1 sekundu. Ovo je primjer iz jednog projekta na CMS LiveStreet-u.

Keširanje bajtkoda pomoću PHP akceleratora značajno povećava performanse servera i odgovor na zahtjeve klijenata. Postoji nekoliko popularnih PHP akceleratora, među kojima je naš izbor pao na XCache.

Većina ljudi zna da PHP radi na principu prevodioca, tj. Prvo se analizira skripta, zatim se njen sadržaj prevodi u bajt kod (http://ru.wikipedia.org/wiki/Bytecode), a tek onda se interpretira i proizvodi rezultat.

PHP akceleratori Jednom kreiran, bajt kod se kešira određeno vrijeme za naknadnu ponovnu upotrebu ako originalna kripta nije bila podložna promjenama. Dakle, PHP se oslobađa od 2 faze rada: raščlanjivanja skripte i prevođenja u bajtkod - ako postoji keširani PHP bajtkod, ostaje samo da ga interpretira i vrati rezultat. I činjenica da je bajtkod pohranjen/keširan ram memorija, daje prilično primjetno povećanje performansi.

Postoji još nekoliko popularnih akceleratora za PHP, APC ( Najnovija beta verzija: 3.1.13 (2012-09-03)) i eAccelerator ( Najnovija stabilna verzija: 0.9.6.1 (2010-05-31)), koji se smatraju potencijalno mrtvima, pa je njihova upotreba vrlo obeshrabrena. Na primer, za eAccelerator, iako je deklarisana podrška za PHP 5.4, primećeni su ponovljeni kvarovi pri njegovom korišćenju i izraženi su, čini se, u HTTP 500 grešci na nekim web stranicama koje su radile savršeno nakon onemogućavanja eAcceleratora.

Danas je XCache najidealniji kandidat koji podržava sve verzije PHP-a uključujući PHP 5.6.

Spisak PHP akceleratora - Wikipedia, besplatna enciklopedija: http://en.wikipedia.org/wiki/List_of_PHP_accelerators

Instalacija i početna konfiguracija XCache-a na Linuxu

Možete instalirati XCache na Linux iz sljedećih paketa:

$ yum install php-xcache xcache-admin $ apt-get install php5-xcache

xcache.ttl i xcache.var_maxttl default = 0, tj. Životni vek keš memorije je neograničen, što po našem mišljenju nije dobro IMHO, skripte se već mogu izbrisati, a keš će se zamrznuti, zauzimajući tako potrebnu RAM memoriju. Stoga ćemo postaviti životni vijek keša na 24 sata (86400 sekundi), sa intervalom prikupljanja smeća "*gc_interval" od 3600 sekundi. (jedan sat):

$ vi / etc/ php.d/ xcache.ini [ xcache-common] ekstenzija = xcache.so [ xcache.admin] xcache.admin.enable_auth = Isključeno xcache.admin.user = "admin" xcache.admin.pass = [ xcache] xcache.shm_scheme = "mmap" xcache.size = 60M xcache.count = 1 xcache.slots = 8K xcache.ttl = 86400 xcache.gc_interval = 3600 xcache.var_size = 4M xcache1.cache xcache = 8K xcache. .var_ttl = 0 xcache.var_maxttl = 86400 xcache.var_gc_interval = 3600 xcache.var_namespace_mode = 0 xcache.var_namespace = "" xcache.readonly_protection = Isključeno xcache.mmap_path = "core.xmp_cache" tip = 0 xcache.disable_on_crash = Isključeno xcache.experimental = Isključeno xcache.cacher = Uključeno xcache.stat = Uključeno xcache.optimizer = Isključeno [ xcache.coverager] xcache.coverager = Isključeno xcache.coverager_autostart = Uključeno http://xcache.coveragedu = "$serviced" restart

Možete provjeriti da li je XCache uspješno instaliran pomoću php skripte, čiji rezultati bi trebali sadržavati redove sa XCache konfiguracijskim parametrima:

Detalji o postavkama konfiguracije ovdje: http://xcache.lighttpd.net/wiki/XcacheIni#INISettingsforXCache

Instaliranje XCache Admin Panela

XCache Admin Panel korisno u početnoj fazi, kada bi bilo lijepo saznati efikasnost korištenja keš memorije i da li je za to dodijeljeno dovoljno RAM-a ( ram memorija), a nakon toga se admin panel može ukloniti dugi niz godina.

XCache admin panel je jednostavan skup PHP skripti, i ako je instaliran paket xcache-admin, onda će te iste PHP skripte administrativnog panela biti dostupne na /usr/share/xcache, koje se mogu kopirati u web direktorij u kojem potreba (cp - r /usr/share/xcache /var/www/html/), ili je bolje samo kreirati pseudonim za virtuelni host koji nam je potreban:

< virtualhost ...>... Alias ​​/xcacheadmin "/usr/share/xcache/"< Directory "/usr/share/xcache/" >Opcije Indeksi MultiViews FollowSymLinks AllowOverride All Order dozvoli, zabrani Dozvoli od svih

Sada kreirajmo MD5 hash lozinke i uredimo naš xcache.ini ( ili php.ini) b i ponovo pokrenite server:

$ echo -n "tajna lozinka" | md5sum - $ vi / etc/ php.d/ xcache.ini [ xcache.admin] xcache.admin.enable_auth = Na xcache.admin.user = "admin" xcache.admin.pass = "3cb1cc80547422c9ef667953f00e9a17"$ / etc/ init.d/ httpd restart

XCache admin panel bi sada trebao biti dostupan na http://my-host.com/xcacheadmin. Ali u mom slučaju, autorizacija je bila neuspješna i XCache Admin Panel je stalno odjekivao “Authentication Failed”.

Prema nekim izvještajima (#339 (xache3.1.0 Ponavljajući iskačući prozor zahtijeva autentifikaciju) – XCache), problem je zbog činjenice da HTTP_AUTHORIZATION ne dopire do pozadine. Čini se da .htaccess pomaže nekome sa linijom "SetEnvIf Authorization .+ HTTP_AUTHORIZATION=$0", ali je odlučeno da se "zaborave" svi ovi problemi i potpuno onemogući "xcache.admin.enable_auth = Off" ova nevažeća XCache autorizacija i da se koristi direktno sa istog .htaccess-a:

AuthUserFile "/path/to/.htpasswd" AuthName "Samo administrator" AuthType Basic zahtijeva važeći korisnik Zadovolji sve #Order dozvoli, zabrani #Dozvoli od xxx. xxx. xxx. xxx

PAŽNJA! To znači da statistika administratorskog panela, poput samog keširanja bajtkoda, nije globalna, već se primjenjuje isključivo na svaki virtualni host (domen) zasebno.

Ako admin panel nije dostupan iz paketa, onda se može "istrgnuti" iz arhive izvornog koda (httpd direktorij), za više detalja slijedite linkove:

  • InstallAdministration – XCache
    • http://xcache.lighttpd.net/wiki/InstallAdministration
    • http://xcache.lighttpd.net/wiki/GettingSource

XCache briše keš svakih 10 minuta

Ako se tokom životnog veka keš memorije xcache.ttl broj pogodaka u statistici korišćenja keširanog bajtkoda ne poveća, a veličina dostupne (besplatne, Avail) RAM-a se ne smanji ili su ovi indikatori redovno (svakih 5-10 minuta) resetirajte na nulu, To znači da treba nešto učiniti s postavkama.

XCache keš se resetuje nakon svakog ponovnog pokretanja servera (ponovno učitavanje, graciozno ili ponovno pokretanje). Neki pojedinci, umjesto da fino podese i promišljeno konfigurišu server, jednostavno napuste podrazumevane konfiguracije i bore se protiv redovnog curenja memorije i rušenja servera pomoću apachectl graceful komande koja se izvršava iz cron-a. Stoga, prvo morate provjeriti cron zadatke za naredbe koje ponovo pokreću web server.

Ako u kruni nema ništa sumnjivo, onda morate prokopati po konfiguraciji servera, posebno ako se na njemu pokreću skripte aka FastCGI:

$ vi / etc/ httpd/ conf.d/ fcgid.conf # FcgidProcessLifeTime 3600 FcgidProcessLifeTime 0 # zadano: FcgidIdleTimeout 300 FcgidIdleTimeout 86400 # Podrazumevano: FcgidMaxRequestsPerProcess 0 #mustby<= PHP_FCGI_MAX_REQUESTS FcgidMaxRequestsPerProcess 0 ... DefaultInitEnv PHP_FCGI_CHILDREN 1

Gore navedeno je radna konfiguracija, gdje se ne provjerava životni vijek i maksimalni broj zahtjeva za Fcgid procese (tj. = 0), s izuzetkom provjere procesa koji čekaju, odnosno ako proces koji čeka zahtjev ne primi jedan unutar FcgidIdleTimeout ( 24 sata), tada će biti ubijen i XCache će biti resetovan u skladu s tim.

Problem sa redovnim ispiranjem keš memorije pojavio se kada su neki korisnici odabrali da pohranjuju sesije koristeći XCache, a pošto su Fcgid procesi sa zadanim postavkama redovno ubijani zajedno sa XCache kešom, korisnici su ponovo morali da se autentifikuju iznova i iznova.

Lista. XCache izdanja: http://xcache.lighttpd.net/wiki/ReleaseArchive

AdMin BagoSeeker je vatreni borac za rad bez grešaka svih mehanizama i organizama širom svemira i stoga je u vječnoj potrazi za svim vrstama buba, a oni koji traže, kao što znamo, uvijek pronađu. Kada se nešto ili neko ne može izliječiti, onda uz riječi “Ja sam u paklu, a vi ste svi đavoli” on ulazi u pijanstvo, iz kojeg ponovo počinje liječiti neizlječive.

Da bi se ubrzalo izvršavanje PHP skripti, postoje takozvani akceleratori. Njihova suština je da se PHP skripta prevede u keš memoriju. Nakon toga, kada se skriptu ponovo pristupi, ona se vraća u kompajliranom obliku. Što uvelike utiče na opterećenje servera, jer sada više ne morate svaki put ponovo kompajlirati skriptu.

xCache- veoma dobar, po mom mišljenju, PHP akcelerator, koji nekoliko puta povećava brzinu izvršavanja PHP skripti..

Korištenje akceleratora smanjuje vrijeme generiranja stranica nekoliko puta i također smanjuje opterećenje serverskog procesora. Dakle, nakon postavljanja Xcache-a na server, količina vremena koje se koristi procesor smanjila se za skoro polovinu. A pošto koristim virtuelni server za hostovanje svojih sajtova, gde plaćam samo korišćenje resursa, korišćenje PHP akceleratora smanjuje ukupne troškove iznajmljivanja servera.

Dakle, počnimo instalirati php kod akcelerator na server - Xcache.

Pokrećem Ubuntu 10.04 na serveru, ali noviji, kao što je nedavno objavljeni Ubuntu LTS 12.04 14.04 sa dugotrajnom podrškom, će izgledati isto. Sve radi isto na Debianu 7.

Instaliraj:

Sudo apt-get install php5-xcache Najnovija stabilna verzija će biti instalirana, tako da nema potrebe za kompajliranjem bilo čega.

Nakon instalacije, otvorite konfiguracionu datoteku u /etc/php5/conf.d/xcache.ini

Za mene to izgleda ovako:

Xcache.size = 128M

xcache.count = 14

xcache.slots = 8K

xcache.ttl = 36000

xcache.gc_interval = 36000

xcache.var_size = 8M

xcache.var_count = 14

xcache.var_slots = 8K

xcache.var_ttl = 36000

xcache.var_maxttl = 604800

xcache.cacher = Uključeno

xcache.stat = Uključeno

Glavni parametri:

xcache.size— odgovoran je za količinu memorije za pohranjivanje keš memorije. Ako je vrijednost premala, onda efekat keširanja neće raditi.

xcache.count- broj blokova na koje će keš biti podijeljen. Preporučuje se podešavanje prema broju procesorskih jezgara.

xcache.slots— Broj slotova za keš memoriju, što je više slotova, veća je brzina pretraživanja u kešu. Ali potrošnja memorije se također povećava. Preporučuje se da ostavite zadanu vrijednost: 8K

xcache.ttl-Životni vijek keširanog objekta u sekundama. Ako se objektu nije pristupilo određeno vrijeme, objekt se označava kao neupotrebljiv i naknadno ga sakupljač smeća uklanja iz keša.

xcache.gc_interval- interval pokretanja sakupljača smeća u sekundama. Određuje vremenski period nakon kojeg će se sakupljač smeća pokrenuti. Kada se pokrene, traži istekle unose (xcache.ttl) i uklanja ih iz keša.

Posljednja dva parametra (xcache.ttl i xcache.gc_interval) su vrlo važna u konfiguraciji Xcache-a, ali na mnogim stranicama vrijednosti ovih parametara su postavljene na 0, odnosno ništa se ne briše iz keša, a kada je potpuno puna, nove skripte više ne ulaze u njega. Odnosno, ako hostujete novu stranicu na serveru, njene skripte više neće ići u keš memoriju, jer je u potpunosti ispunjen skriptama sa prethodne stranice.

Parametri koji počinju sa xcache.var_ su odgovorni za keširanje rezultata proračuna. I njihovi parametri su slični.

Nakon što sačuvate postavke, trebali biste ponovo pokrenuti web server.

Sudo /etc/init.d/apache2 restart

Pogledajte Xcache statistiku

Xcache ima svoj admin panel, koji vam omogućava da vidite trenutno stanje i izbrišete keš memoriju da bi funkcionisao, potrebno je da kopirate admin folder iz /usr/local/share/examples/xcache/admin/ u direktorijum vašeg sajta. (Ubuntu)

U Debianu 7, ovaj direktorij se nalazi na putu /usr/share/xcache

Ali prije toga, trebali biste postaviti lozinku u konfiguracijskoj datoteci. Za to su odgovorni parametri

Xcache.admin.enable_auth

xcache.admin.user= "korisnik"

xcache.admin.pass= "lozinka"

Lozinka bi trebala biti navedena kao md5hash radi veće pouzdanosti.

Možete dobiti md5hash radeći

PHP echo md5("lozinka"); ?> ili možete dobiti hash na primjer na web stranici http://mainspy.ru/shifrovanie_md5

Slotovi - Broj slotova za keš memoriju, što je više slotova, veća je brzina pretraživanja u kešu. Ali potrošnja memorije se također povećava. Preporučuje se da ostavite zadanu vrijednost: 8K

Veličina- veličina memorije za Xcache.

Avail- koliko je memorije ostalo.

Jasno- resetujte keš memoriju.

Hits- koliko je pristupa fajlu napravljeno

Gospođice- koliko je poziva na datoteke obavljeno, ali ti fajlovi nisu bili u memoriji.

Klompe- privremeno blokirane datoteke u kešu.

OOMs- Broj datoteka koje nisu mogle ući u keš memoriju zbog nedostatka memorije.

Spremljeno u privremenu memoriju- Ukupan broj datoteka u kešu.

Donja tabela pokazuje koji su fajlovi keširani i koliko efikasno.

Hits- broj poziva ovoj skripti u memoriji. Što veće, to bolje. Ako je za neke datoteke ova vrijednost duže vrijeme manja od 10, onda se ova datoteka rijetko koristi i samo zauzima prostor u memoriji.

Veličina- veličina ove datoteke u memoriji. Evo najzanimljivijeg dijela. Ispostavilo se da kompajlirana datoteka zauzima 10 puta više prostora u memoriji nego na disku. O MOJ BOŽE!

SrcSize- veličina datoteke na disku

Pristup- prije koliko vremena je pristupljeno ovoj datoteci

Stvoriti- koliko dugo je ova datoteka bila u kešu

xCache je program iz serije onih koji keširaju PHP bajt kod za optimizaciju i ubrzanje izvršavanja skripte. Kao, na primjer, eAccelerator ili PHP-APC.

Ovaj članak će pokriti osnovne postavke. A onda možete podesiti parametre prema vlastitim željama.

Nema smisla dugo odlagati instalaciju: sve se radi standardno.

Aptitude instalira php5-xcache

Osnovna podešavanja keša

Prvi prioritet će biti ukazivanje na osnovne postavke za rad. Otvorite datoteku u svom omiljenom uređivaču . Svi parametri se skupljaju u grupe. IN ovog trenutka treba nam grupa

xcache.size = 32M

Ova direktiva specificira ukupnu količinu memorije za keš memoriju. Zadana vrijednost je 16 megabajta.

xcache.count = 1

Označava se brojem procesora (jezgri). Dvije jezgre - postavljeno na 2. I tako dalje. Ili dva procesora s jednom jezgrom.

xcache.ttl = 0

Životni vijek keš memorije. Ponekad ćete možda morati da obrišete keš memoriju nakon određenog vremenskog perioda. Vrijednost je prikazana u sekundama.

Pogledajmo parametre potrebne za keširanje varijabli. U određenim uslovima i ovo može biti korisno.

xcache.var_size = 8M

Ukupna količina memorije dodijeljena varijabilnoj keš memoriji. Podrazumevano 0 - onemogućeno.

xcache.var_count = 1

Ova varijabla je slična xcache.count.

xcache.var_ttl = 0

Ovdje također možemo napraviti analogiju sa promjenljivom xcache.ttl: ona postavlja vijek trajanja keša varijabli.

xcache.var_maxttl = 0

Ova varijabla specificira maksimalni životni vijek keša.

XCache Optimizer

Ponekad ćete možda morati da omogućite ugrađeni optimizator xCache-a. Da biste to učinili, sljedeća direktiva se mora prenijeti od države isključeno u državi on.

Xcache.optimizer = uključeno

Admin panel za xCache

xCache dolazi sa kontrolnom pločom koja vam omogućava da vidite statistiku. Imam kombinaciju nginx+php-fpm, primjer će biti napisan uzimajući to u obzir.

Prije svega, konfiguriramo nginx. Ovdje ćete morati koristiti pseudonim za lokaciju.

Lokacija /x/ ( alias /usr/share/xcache/admin/; lokacija ~ .php$ ( fastcgi_index index.php; fastcgi_pass unix:/run/php-fpm.sock; uključi fastcgi_params; fastcgi_param PHP_ADMIN_VALUE "open_basedir =/usr/share/xcache/admin/:/var/php-temp-dir/"; fastcgi_param SCRIPT_FILENAME $request_filename; } } !}

Registriramo konfiguraciju za bilo koji virtualni host i restartujemo nginx: servis nginx ponovno učitavanje. Zatim otvorite stranicu u pretraživaču http:// example.com/x/mkpassword.php. Zamijenite Example.com adresom vaše web stranice za koju ste kreirali pseudonim.

Koristeći ovu skriptu, potrebno je da kreirate md5 hash lozinke, koji će se koristiti za autentifikaciju u xCache admin panelu. Dovoljno je navesti lozinku, kliknuti na dugme “Pošalji zahtjev” i kopirati rezultat.

Nakon svih ovih koraka, otvorite datoteku /etc/php5/mods-available/xcache.ini, u grupi uredite potrebne parametre.

xcache.admin.user = "korisničko ime"

Navedite ime korisnika koji će imati pristup admin panelu.

xcache.admin.pass = "..."

Ovdje morate navesti md5 hash korisničke lozinke u navodnicima.

Sačuvajte uređenu datoteku i ponovo pokrenite apache, php-cgi ili php-fpm.

Sada bi xcache administrator trebao biti dostupan na http://example.com/x/. Pokušajte se prijaviti i pogledati statistiku.



top