Acasă Una alta Despre APC, Litespeed și Nginx (notițe)

Despre APC, Litespeed și Nginx (notițe)

201
9

Scriam mai demult că am trecut cu serverul lu DarkQ la cei de la vps.net. Momentam am 8 noduri. Fiecare nor costă $20 dar prețul/nod scade ușor dacă iei mai multe. De exemplu al 8-le nod nu mai e $20 ci $16. În fine…

Spuneam că prima configurație includea LiteSpeed, care și aia mai era $14/lună. Ah și APC, dar aia e free. Totul a mers bine-mersi până ce am avut nevoie de vreo două module. După care, am observat că efectiv randomly, WordPress-ul îmi dădea erori aiuristice. Buba era că APC nu e compatibil cu Zend optimizer. La acel moment am dezinstalat APC.

După aia, directorul de fișiere temporare se umplea foarte repede. Aveam erori de genul:

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent...

Problema era de la:

/dev/loop0 /var/tmp 90% (422,123 of 495,844)

Bun, le-am scris să crească acel director, au zis că nu se poate decât dacă plătesc $10 pentru că operațiunea nu îi inclusă în suportul free. Am plătit, s-a rezolvat.

În urmă cu câteva zile am văzut că uneori, foarte rar, când un flux mai mare de vizitatori intră pe site, acesta tinde să se miște ca melcu’. Dă-i și caută problema. Am plătit un audit de securitate, diverse tweak-uri pe la Mysql… $39,99.

Cert e că problema nu s-a rezolvat. Ah hotărât să renunț la Litespeed pentru că eram convins că ăla e de vină cumva, plus că avea tendința să baneze (Rauss de ex. a pățit-o). Am dezinstalat LiteSpeed-ul, am scăpat de licență. Acum, Apache-ul singur făcea load.

Soluția (pe care mi-a recomandat-o cineva)? NginxCp.

Se instalează așa (știu că puțin vă interesează dar vreau io să îmi notez că uneori mi-e folositor):

cd /usr/local/src
wget http://nginxcp.com/latest/nginxadmin.tar
tar xf nginxadmin.tar
cd publicnginx
./nginxinstaller install

Practic, Nginx-ul este tot un fel de litespeed, doar că e free și e puțin mai permisiv. Nu este așa de performat ca și Litespeed-ul, în benchmark-uri e în urma Litespeed-ului. Pentru ca Nginx-ul să funcționeze ok trebuie ca Apache non-SSL IP/port de la Tweak Settings să fie așa: 0:0:0:0:8081.

În fine. Folosindu-mă de funcția Easy Apache din WHM, am recompilat Php-ul și Apache-ul excluzând căcatu’ de Zend Optimizer. Apoi am instalat APC-ul din nou, astfel:

cd /usr/local/src
wget http://pecl.php.net/get/APC-3.1.19.tgz
tar -xzf APC-3.1.19.tgz
cd APC-3.1.19
phpize && ./configure --enable-apc --enable-apc-mmap --with-apxs=/usr/local/apache/bin/apxs --with-php-config=/usr/local/bin/php-config && make && make install
cd /usr/local/lib/php/extensions/no-debug-non-zts-20090626
ls

acolo ar trebui să se vadă apc.so dacă totul a mers OK.

Se adaugă extensia la php.ini (teoretic e în /usr/local/lib/):

extension=apc.so

Eventual se poate crea un fișier numit test.php care să conțină doar asta:

<?php phpinfo(); ?>

și se află de acolo calea de nume directoare către php.ini.

Se restartează Apache-ul și eventual Nginx-ul (eu le-am restartat din Cpanel dar se poate și din linia de comandă).

dacă merge tptul OK, și la procese se vede ceva de genul:

nginx: worker process

…înseamnă că totul e OK.

Ce am învățat din toată povestea?

  • Că never ever să nu pui APC și ZEND laolaltă.
  • Litespeed e bun dar fără o configurare foarte bună poate da probleme începătorilor, ca și mine de altfel.
  • Nginx-ul este FREE și e foarte bun, merită pus.
  • Orice companie care oferă servere caută să îți recomande cât mai multe resurse… eu aș opta pentru folosirea inteligentă a celor existente și dacă nu se poate altfel, atunci da, mai cumpărăm noduri.
Articolul precedentFloarea inocenței – primul act
Articolul următorSfarsind…
Se pare ca si robotii se imbolnavesc. Nu as zice ca se scurtcircuiteaza. Dar pot aparea polipi sau tumori in circuit, de rezistenta infinita, care denatureaza auzul si vazul, de alfel divin in “multiplexitatea” sa. Asa au aparut noile masinarii. O masina bolnava (faza nasoala e ca masinile chiar daca sunt bolnave, nu mor), imperfecta, si zgomotoasa, ce emite pe frecvente periculoase si oscilante.

9 COMENTARII

  1. Iti spun aici mai bine 😛

    1. Iti instalezi plugin-ul „Smush it” – reogranizeaza sistemul cache al fotografiilor, le misoreaza dimensiunea (volumetrica sa zicem 🙂 ) – si astfel se incarca mai repede pagina care are featured image

    2. Intri la panoul de administrare la sectiunea Appearence ==> Editor. Cauti ori in Fisierul *Header ori *Footer (pt ca depinde de fiecare template) unde se afla </head>…….<body>. Intre astea inserezi exact asa (in principiu creste durata de incarcare cu cel putin 15-25%).

    3. ar fi fost WP-Cache dar zici ca-l ai

    4. Cauti orice plugin care iti comprima CSS-ul…

    Dupa toate astea ar trebui sa iti creasca timpul de incarcare cu 40% (aproximativ)

  2. Robert,
    ma luat ameteala citind ce scrie aici..
    Nu ca as fi priceput io ceva, ca tot suna pe pekineza..
    Am priceput ca acum deocamdata tot e ok si sa ne apucam de donat ca sa scumpeste apache si negix si nodurile…alea virtuale, nu alea ce le-am in git eu acu citind…
    :-))))

  3. Nginx este bun il folosesc pe un server dar este greu de configurat nu imi place. Litespeed makes my life a lot easier.

    Thank for the information.

    Alexander

  4. Mic update, tot asa, notite pentru mine.

    Se pare ca Nginxcp impiedica citirea $_SERVER['REMOTE_ADDR'] necesar pentru akismet si ceva cache-uri. returneaza adresa server-uui si nu a vizitatorului.

    Solutia este un modul, numit mod-rpaf.

    Se instaleaza asa:

    wget http://stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz
    tar xvfz mod_rpaf-0.6.tar.gz
    cd mod_rpaf-0.6
    sed -ie 's/apxs2/apxs/' Makefile
    make rpaf-2.0
    make install-2.0

    Apoi in httpd.conf se baga:

    LoadModule rpaf_module modules/mod_rpaf-2.0.so
    #Mod_rpaf settings
    RPAFenable On
    RPAFproxy_ips 127.0.0.1 x.x.x.x x.x.x.x x.x.x.x x.x.x.x (Ip-urile dedicate)
    RPAFsethostname On
    RPAFheader X-Real-IP

    restart Apache:

    /etc/init.d/httpd restart

    Acum, <?php echo $_SERVER['REMOTE_ADDR']; ?> ar trebui sa returneze adresa de IP a vizitatorului.

  5. @Rauss, vezi ca ti-am corectat aia cu head si body ca nu se vedea. Ideea e ca nu se scrie asa, ci asa ca sa se vada normal… practic se codeaza parantezele unghiulare.

    &lt;/head&gt;.......&lt;body&gt;

    1. Smushit-ul il stim, l-am testat mai demult dar ingreuneaza foarte mult sistemul de poastare a pozelor… asta daca serverul de la yahoo e UP… ca de nu te umple de erori. prefer sa optimizez imaginile cand le creez.

    2. este deja pus php flush, by default in tema.

    3. da

    4. w3 total cache face minify, da si tu un view source sa vezi ca stilurile si JS sunt grupate toate laolalta si minificate, si se sevesc de pe un CDN. 🙂

LĂSAȚI UN MESAJ

Please enter your comment!
Please enter your name here