Optimizarea functionarii echipamentelor. Virtualizare server - sisteme pentru optimizarea costurilor cumpara orice configuratie selectia parametrilor si selectia costurilor dupa pret si calcul Solutii tehnice pentru optimizarea serverului

Optimizarea infrastructurii bazelor de date și a mediilor virtuale

Îmbunătățiți performanța infrastructurii actuale a bazei de date și obțineți recomandări pentru optimizare ulterioară servicii cloud.

Proiectul de optimizare a serverului este relevant în următoarele cazuri:

  • lipsa unui sistem centralizat de stocare și recuperare a datelor;
  • probleme cu performanța serverelor SQL;
  • probleme în activitatea aplicațiilor;
  • lipsa unui sistem de toleranță la erori în centrul de date;
  • evaluarea gradului de pregătire și fezabilitate a migrării infrastructurii IT către cloud;
  • lipsa unei înțelegeri comune a stării infrastructurii bazei de date și a mediului virtual.
    Gestionați-vă mediul serverului mai eficient:
    Auditul tehnic al infrastructurii de bază date SQL
    Detectarea problemelor de configurare a serverului Reglarea SQL Server nu este o sarcină ușoară, chiar și pentru un administrator de baze de date cu suficientă experiență. Vom efectua o analiză exhaustivă a setărilor la nivel de sistem, cum ar fi setările implicite de memorie, partiționare, sesiuni concurente, cache, discuri, setări Rezervă copie si etc.

    Optimizarea memoriei și a stocării pe disc Principalul factor care afectează performanța oricărei baze de date moderne este subsistemul I/O. Vom analiza natura încărcării pe baza de date și vom oferi recomandări pentru optimizarea stocării și a memoriei RAM atât în ​​ceea ce privește viteza, cât și fiabilitatea stocării informațiilor.

    Optimizarea performanței bazei de date Fiecare dezvoltator de baze de date are recomandări diferite pentru optimizarea performanței serverului sau cluster-ului. Specialistii companiei noastre au efectuat diverse optiuni de configurare a bazei de date pt tipuri diferite incarca si poate oferi setări optime productivitate. Aceste recomandări sunt întotdeauna susținute de link-uri către documentație și cele mai bune practici ale furnizorilor pentru implementarea software-ului.

    Analiza jurnalelor de erori și detectarea problemelor critice Jurnalele de erori sunt sursa principală de informații despre funcționarea bazei de date și problemele din aplicațiile care utilizează această bază de date. Specialistii nostri si-au dezvoltat propriile instrumente pentru analiza problemelor si gasirea metodelor de eliminare a acestora. De regulă, orice proiect conține în mod necesar o analiză a jurnalelor serverului de baze de date, pe baza căreia se dau recomandări de optimizare.

    Optimizarea bazei de date(declanșatoare, indici, mesaje de urmărire) Toate bazele de date moderne colectează informații despre propria lor performanță sub forma unui set de segmente de date care vă permit să determinați cât de eficient funcționează baza de date cu subsistemul disc, cache de interogări, suficiența indicilor în tabele , etc. Vom analiza aceste informații și vom oferi recomandări pentru a face modificări la setări.

    Construirea unei arhitecturi tolerante la erori Dezvoltarea unei arhitecturi de bază cu un mod de operare 24x7 cu un timp de nefuncționare de cel mult 2 ore pe an presupune o creștere a numărului de servere, un studiu detaliat al părții software și eliminarea unui singur punct de defecțiune. Vă vom ajuta să rezolvați o astfel de problemă și, în plus, veți primi o politică de backup și restaurare atât a codului executabil al bazei de date, cât și a tuturor datelor.

    Pregătirea unei baze de date foarte disponibile cu timpi minimi de răspuns Experții noștri vă vor ajuta să vă optimizați bazele de date pentru a obține viteza maximă a serverului dumneavoastră. Analiza latenței, eficiența cache-ului, indici, „interogări grele”, se efectuează lucrările optimizatorului de interogări, precum și recomandări pentru îmbunătățirea eficienței muncii.

    Optimizarea bazelor de date pentru aplicații specifice Optimizam si configuram bazele de date MS SQL si Oracle pentru operarea aplicatiilor de business, precum sisteme de management al documentelor, sisteme de gestiune contabila, solutii de portal, etc. La efectuarea lucrarilor, ne ghidam dupa recomandarile furnizorilor de software pentru personalizarea software, precum precum și propria noastră experiență de optimizare DB sub tipuri diferite sarcina utilizatorului.

    Alegerea unei platforme hardware pentru implementarea software-ului bazelor de date Furnizorii de baze de date moderne au liste de echipamente optime pentru funcționarea bazei de date. Vă putem analiza preferințele furnizorului, găsim servere unde puteți implementa software de bază de date sau pregătim o specificație pentru achiziționarea de echipamente pentru o bază de date.

    Analizați și optimizați un mediu de operațiuni de bază de date virtuală Problemele de performanță ale oricărui software într-un mediu virtualizat sunt de obicei asociate cu caracteristicile fiecărui hypervisor specific și cu hardware-ul pe care rulează serverele virtuale. Experții noștri vor ajuta la determinarea cauzelor încetinirilor și la optimizarea plasării software-ului bazei de date servere virtualeîn centrul dvs. de date.

    Obțineți un calcul precis al proiectului de la noi sau aflați cum să efectuați un sondaj fără costuri din partea dvs. cu sprijinul furnizorului.

  • Există mai multe moduri de a îmbunătăți performanța serverului, dar optimizarea este cea mai bună.

    Optimizarea sistemului de operare (FreeBSD)

    • Accesați 7.x este util pentru sistemele cu mai multe nuclee, deoarece pot fi utilizate noul ULE 3.0 Scheduler și jemalloc. Dacă utilizați sistemul moștenit 6.x și nu face față sarcinilor, atunci este timpul să faceți tranziția la 7.x.
    • Trecerea la 7.2 va permite creșterea KVA, optimizarea implicită sysctl și aplicarea superpaginilor. Noul FreeBSD 8.0 este deja în curs de dezvoltare și va ajuta la creșterea semnificativă a performanței.
    • Se face upgrade la amd64 face posibilă creșterea volumelor de KVA și Shared Mem mai mult de 2Gb. Este necesar să se creeze condiții pentru dezvoltarea serverului, deoarece bazele de date sunt în continuă creștere și necesită dimensiuni mari.
    • Descărcarea subsistemului de rețeaîn FreeBSD vă va ajuta să vă optimizați serverul. Acest proces se poate face în doi pași: reglarea parametrilor ifconfig și setările sysctl.conf / loader.conf. În timpul fazei de pregătire, ar trebui să verificați posibilitățile card de retea... Driverele de la Yandex vor ajuta la creșterea vitezei prin utilizarea mai multor fire de execuție; acestea sunt adesea folosite pentru procese cu mai multe nuclee. Pentru o placă de rețea de calitate a treia cea mai bună soluție va deveni polling'e. Cea mai recentă versiune actualizată a reglajului FreeBSD 7 va ajuta la rezolvarea acestei probleme.
    • FreeBSD și o cantitate imensă de fișiere funcționează excelent datorită stocării în cache a numelor de fișiere din director. O căutare a tabelului hash vă va ajuta să găsiți rapid fișierul necesar... Deşi suma maxima memorie de aproximativ 2MB, o puteți crește în timp ce vfs.ufs.dirhash_mem o permite.
    • Actualizări soft, gjurnalșimontură Opțiuni Sunt șuruburi noi de terabyte care oferă performanțe excelente. Fsck-ul lor va dura foarte mult timp când se întrerupe alimentarea, așa că puteți utiliza softupdate sau îl puteți înregistra prin gjournal.

    Optimizare front-end (nginx)

    Acest tip poate fi atribuit optimizării premature, deși va ajuta la creșterea timpului general de răspuns al site-ului. Printre optimizările standard, ar trebui să acordați atenție reset_timedout_connection; Trimite fișier; tcp_nopush și tcp_nodelay.

    • Accept filtre Este o tehnologie care face posibilă transferul de informații din nucleu către proces în cazul în care sosesc date noi sau se primește o solicitare http validă. Aceste filtre vor ajuta la descărcarea serverului cu un număr mare de conexiuni.
    • Memorarea în cache nginx este flexibil și este derivat din fastcgi sau backend-uri proxy. Toată lumea va putea folosi memorarea în cache într-un mod inteligent în proiectul său.
    • AIO este foarte util pentru anumite încărcări specifice de server, deoarece economisește timpul de răspuns, reducând în același timp numărul de lucrători. Versiunile mai noi de nginx fac posibilă utilizarea aio în tandem cu sendfile.

    Optimizare backend

    • APC Este un cadru care vă permite să reduceți încărcarea prin memorarea în cache a codului compilat în OP. Blocarea APC merită actualizată, deoarece poate încetini și în loc de APC mulți încep să folosească eAccelerator. Merită să înlocuiți blocarea cu spinlock sau pthread mutex. Valoarea indicațiilor APC ar trebui crescută cu un număr mare de fișiere .php sau cu memorarea frecventă în cache în memoria cache a utilizatorului APC. Fragmentarea APC este o indicație că utilizați APC în alte scopuri. El nu se poate ocupa în mod independent de ștergerea înregistrărilor de către TTL sau LRU.
    • PHP 5.3 va ajuta la creșterea câștigului de performanță, așa că merită să actualizați versiunea PHP, deși lista de funcții depreciate îi poate intimida pe mulți.

    Optimizarea bazei de date

    Idei de îmbunătățire MySQL funcționează sunt multe pe Internet, pentru că fiecare proiect web se confruntă mai devreme sau mai târziu cu limitările cantității de memorie, disc sau procesor. De aceea solutii simple nu va ajuta să faceți față problemei, merită să petreceți mai mult timp cu profilerii (dtrace, systemtap și oprofile), precum și să folosiți o cantitate mare de software suplimentar. Este necesar nu numai să fii perfect capabil să folosești indecși, să-i sortezi și să-i grupezi, ci și să știi cum funcționează totul în MySQL. De asemenea, trebuie să cunoașteți avantajele și dezavantajele diferitelor motoare de stocare, să înțelegeți Query cache și să explicați.

    Există mai multe modalități de optimizare a MySQL, și chiar fără modificarea codurilor, deoarece jumătate din reglarea serverului se poate face în mod semi-automat folosind utilitarele tuningprimer, mysqltuner și mysqlsla.

    • Trecerea la 5.1 oferă multe avantaje, printre care merită evidențiate optimizarea optimizatorului, Partiționarea, pluginul InnoDB și replicarea bazată pe rânduri. Pentru a accelera activitatea site-ului, unii oameni extremi testează deja versiunea 5.4.
    • Migrarea la InnoDB oferă multe beneficii. Este compatibil ACID, astfel încât orice operațiune se face cu o singură tranzacție. Are blocare la nivel de rând, ceea ce face posibilă citirea și scrierea simultană a mai multor fire izolate unele de altele.
    • MySQL Embedded Cache - Cache de interogări este destul de greu de înțeles, așa că mulți utilizatori îl folosesc irațional sau îl dezactivează. Pentru el, mai mult nu înseamnă mai bine, așa că nu ar trebui să împingi acest subsistem la maximum. Cache-ul de interogări este paralelizat, ca urmare, atunci când se utilizează mai mult de opt procese, va încetini întregul proces și nu va ajuta la reducerea timpului de încărcare a site-ului. Conținutul acestui subsistem, care se referă la un anumit tabel, este anulat atunci când se modifică acest tabel. Aceasta înseamnă că Query Cache oferă rezultat pozitiv numai atunci când se folosesc mese bine concepute.
    • Indecii pot fi dăunători atât pentru SELECT (dacă sunt absenți), cât și pentru INSERT / UPDATE (dacă sunt în plus). Un index care nu mai este utilizat încă ocupă memorie și astfel încetinește modificările datelor. Pentru a face față acestei probleme, merită să utilizați o interogare SQL simplă.

    PostgreSQL

    Sistemul Postgres este destul de versatil, deoarece aparține clasei Enterprise și Skype funcționează excelent pe el, dar în același timp poate fi instalat chiar și pe telefon mobil... Dintre cei 200 de parametri disponibili, 45 dintre ei sunt de bază și sunt responsabili de reglare.

    Puteți găsi multe pe internet Informatii utile pentru tuning Postgres. Dar unele articole sunt deja depășite, așa că ar trebui să începeți de la data publicării și să fiți atenți la informațiile în care este folosită cheia vacuum_mem, sau în versiunile noi ale maintenance_mem. Programatorii avansați vor putea găsi multe tratate de calitate, mai jos enumeram doar acele elemente de bază care vor ajuta utilizatorul mediu să-și îmbunătățească proiectul.

    • Indici PostgreSQL este întotdeauna pe primul loc, în timp ce ei ocupă întotdeauna ultimele poziții în MySQL, iar acest lucru poate fi explicat prin faptul că PostgreSQL are indecși enormi. Programatorul ar trebui să fie perfect familiarizat cu astfel de indici și să știe când și care ar trebui să fie utilizați, cum ar fi GiST, GIN, hash și B-tree, precum și expresii parțiale, multicoloană și on expressions.
    • pgBouncer iar alternativele sale trebuie mai întâi instalate pe serverul cu baza de date. Fără un extractor de conexiune, fiecare cerere creează un proces separat care este utilizat RAM... Pare în regulă, dar atunci când se creează mai mult de 200 de conexiuni, chiar și un server foarte puternic poate face față cu greu procesării informațiilor. pgBouncer ajută la rezolvarea acestei probleme.
    • pgFouine este o program de neînlocuit, deoarece poate fi numit în siguranță un analog al mysqlsla în php. În tandem cu Playr, poate realiza optimizarea interogărilor în condiții complexe pe serverele de staging.

    Descărcarea bazei de date

    Pentru a optimiza funcționarea bazei de date și a crește performanța acesteia, ar trebui să o utilizați cât mai puțin posibil.

    • SphinxQL poate fi folosit ca server MySQL. Pentru a face acest lucru, trebuie doar să creați sphinx.conf, precum și intrările pentru indexator în cron și să treceți la o altă bază de date. Cu acești pași, nici măcar nu este nevoie să schimbați codul. Trecerea la SphinxQL va ajuta la îmbunătățirea vitezei de căutare și a calității și va uita de MyISAM și FTS.
    • Stocare non-RDBMS vă permite să nu utilizați o bază de date relațională. Puteți opta pentru Hive sau Oracle. Baza de date cheie-valoare, datorită vitezei sale, aplică mostre din baze de date relaționale pentru stocarea în cache ulterioară. Proprietarii proiecte majoreîn PHP poate folosi excelenta caracteristică opcode cache pentru a stoca toate datele personalizate. Cu ajutorul acestuia, puteți salva în mod fiabil chiar și modificări ale valorii globale, deoarece acestea ocupă puțin spațiu și practic nu ocupă memorie, iar rata de eșantionare va crește semnificativ. Dacă, pentru un proiect mare, blocul modificărilor globale este scris doar pe o singură mașină, atunci traficul va crește și va începe să încetinească foarte mult. Pentru a rezolva această problemă, trebuie să stocați variabile globale în memoria cacher-ului opcode sau să clonați variabilele pe toate serverele și să scrieți excepții în algoritmul de hashing de consistență.
    • Codificări sunt printre cele mai eficiente metode de descărcare a bazei de date. Este de remarcat faptul că UTF-8 este o alegere excelentă, dar în rusă ocupă mult spațiu, așa că pentru un contingent monolingv, ar trebui mai întâi să vă gândiți la utilizarea rațională a codificării.
    • Asincronia va ajuta la reducerea timpului de răspuns al unei aplicații sau al site-ului, precum și la reducerea semnificativă a încărcării serverului în sine. Solicitările de lot se fac mult mai rapid decât cele obișnuite. Pentru proiecte uriașe, puteți folosi mesaje RabbitMQ, ApacheMQ sau ZeroMQ, iar pentru proiecte mici, puteți utiliza doar cron.

    Aplicații suplimentare pentru optimizare

    • SSHGuard sau alternativă este o practică standard pentru ssh. Anti-forțarea brută ajută la crearea unei protecție fiabilă a serverului împotriva atacurilor bot.
    • Xtrabackup de Percona este un instrument excelent de backup MySQL care este extrem de configurabil. Dar solutie ideala cu toate acestea, merită menționat clonele în ZFS, deoarece acestea sunt create foarte rapid, iar pentru a restabili baza de date, este suficient să schimbați căile către fișiere în configurația musculară. Clonele vă permit să vă reconstruiți sistemul de la zero.
    • Mutarea e-mailului pe o altă gazdă va economisi trafic și IOP-uri dacă serverul dvs. este doar bombardat cu spam.
    • Integrare cu terți software va ajuta la optimizarea serverului mysql. De exemplu, pentru mesagerie, puteți utiliza grupul smtp / imap, care nu ocupă multă memorie. Pentru a crea un chat, este suficient să utilizați un cadru de server jabber cu un client javascript. Aceste sisteme, care se bazează pe adaptoare pentru produse de pe raft, sunt foarte scalabile.
    • Monitorizarea este o componentă foarte importantă, deoarece este imposibil să optimizați ceva fără o analiză detaliată. Este necesar să monitorizați valorile de performanță, resursele gratuite și latența, Zabbix, Cacti, Nagios și alte instrumente vă vor ajuta în acest sens. Testul de performanță web vă permite să calculați viteza de încărcare a unui site sau proiect, prin urmare este foarte util în monitorizare. Când reglați performanța serverului, amintiți-vă că doar o analiză amănunțită va ajuta la eliminarea tuturor problemelor apărute și la optimizare.

    Nu am înțeles jumătate din ceea ce a fost scris - nu contează.

    Necesitatea de a optimiza sistemul de operare server

    Optimizarea permite, în primul rând, reglarea optimă a PC-ului și, astfel, obținerea performanței maxime a computerului, cea mai completă implementare a acestuia funcţionalitate... În al doilea rând, optimizarea este necesară pentru întreținerea unui PC, ca orice dispozitiv. Ignorând optimizarea periodică și, în unele cazuri, regulată (scanare, curățare, defragmentare Hard disk...) va duce, în cel mai bun caz, la o scădere a vitezei computerului, în cel mai rău caz - chiar și la pierderea datelor.

    4. Actualizare Sistem de operare Unix

    1. În partea de jos partea dreapta panoul, vedem pictograma Update Manager. Faceți clic pe el cu mouse-ul

    Figura 20

    2. Ca oricine se respectă pe ea însăși și pe utilizatorii ei, sistem modern, Linux Mint 14 vă va cere să introduceți parola administrativă pentru a face modificări în sistem. Introduceți-l și faceți clic pe OK:


    Figura 21

    3. Arhivele vor fi verificate pentru versiuni noi de programe și pachete pentru Linux Mint 14:


    Figura 22

    Acest proces se va încheia prin deschiderea Managerului de actualizare cu o listă de pachete actualizate:


    Figura 23

    Toate pachetele upgradabile sunt împărțite în niveluri, așa că cred că nu va fi de prisos să vă reamintesc de aceste niveluri.


    Figura 24

    4. După ce am selectat tot ceea ce am dorit să actualizăm (sau am lăsat toate elementele bifate), faceți clic pe butonul „Instalare actualizări”:


    Figura 25

    5. Managerul de actualizare Linux Mint 14 va notifica și va afișa informații despre actualizările care vor fi instalate

    Figura 26

    Odată ce sunteți de acord, va începe procesul de obținere și actualizare a Linux Mint 14 la starea actuală


    Figura 27

    După încheierea actualizării, în partea de jos a Managerului, veți vedea următorul mesaj

    Figura 28

    Înseamnă că sistemul dumneavoastră nu necesită actualizare și că toate programele din el sunt actualizate.

    Organizarea locului de munca

    Pentru a îmbunătăți locul de muncă, trebuie luate următoarele măsuri:

    1. Așezați monitorul astfel încât punctul său superior să fie direct în fața ochilor sau mai sus, ceea ce vă va permite să vă mențineți capul drept și să excludă dezvoltarea osteocondrozei cervicale. Distanța de la monitor la ochi trebuie să fie de cel puțin 45 cm;

    2. Scaunul trebuie să aibă spătar și cotiere, precum și o înălțime care să permită picioarelor să stea ferm pe podea. Ideal ar fi să achiziționați un scaun cu înălțime reglabilă, în acest caz, spatele vă va permite să vă mențineți spatele drept, cotierele vă vor oferi posibilitatea de a vă odihni mâinile, poziția corectă a picioarelor nu va interfera cu circulația sângelui în ele;

    3. Amplasarea lucrurilor utilizate frecvent nu trebuie să ducă la o ședere lungă în orice postură răsucită;

    4. Iluminarea locului de muncă nu trebuie să provoace strălucire pe ecranul monitorului. Nu puteți plasa monitorul lângă fereastră astfel încât să puteți vedea simultan atât ecranul, cât și ceea ce este în afara ferestrei;

    5. Când lucrați cu o tastatură, unghiul brațului la cot trebuie să fie drept (90 de grade);

    6. Când lucrați cu un mouse, peria trebuie să fie dreaptă și să se așeze pe masă cât mai departe de margine.

    Asigurați-vă că luați pauze regulate în timp ce lucrați. Regulile și reglementările sanitare dau numeroase seturi de exerciții pentru ochi, pentru a îmbunătăți circulația cerebrală, pentru a ameliora oboseala de la brâul umăr și brațe, de la trunchi și picioare.

    Prevenirea bolilor respiratorii include curatare umedași aerisirea camerei. Lucrul la computer, supravegherea luminii, posturii, luarea de pauze - toate acestea vă vor ajuta să vă creșteți capacitatea de a lucra și vă vor salva de boli grave. Pentru a organiza corect locul de munca este necesar sa se asigure conditii optime de perceptie vizuala in zona de lucru. Cele mai importante elemente ar trebui să fie situate într-o linie vizuală optimă.

    În spațiile industriale, condițiile optime de lucru sunt determinate în principal de temperatură combinată cu umiditatea și mișcarea aerului. Condițiile optime sunt o temperatură de 20-220 C, o umiditate relativă de 30-60%, viteza sa de mișcare nu este mai mare de 0,2 m/s. Pentru zona de lucru, acești parametri sunt determinați luând în considerare sezonul, categoria de lucru, cantitatea de căldură generată în încăpere. Principalele motive pentru dezvoltarea oboselii și scăderea performanței umane sunt zgomotul și vibrațiile. Acestea irită organele auzului, provoacă oboseală umană și pot duce la modificări funcționale ale sistemului nervos central, sistemului circulator etc. Diferiți factori fizici și chimici acționează simultan, în timp ce influența lor reciprocă asupra unei persoane poate crește sau scădea.

    Recent a existat o cerere de ajutor pentru amenajarea unui server dedicat pentru funcționarea unui magazin online pe 1C-Bitrix. Motivul solicitării este funcționarea lentă a site-ului.
    Ne-am uitat pe site - într-adevăr, unele pagini sunt încărcate mai mult de un minut !!!. Primul lucru care mi-a venit în minte când ne uitam pe site a fost că componentele dezvoltate de un alt dezvoltator nu au funcționat optim. Dar nu cu aceeași sumă..

    Date inițiale: Server pe Xeon - 2 GB de memorie, RAID. OS - FreeBSD. AUTOBUZ - Afaceri.

    Ei bine, hai să încercăm să remediam cumva situația...
    Voi face imediat o rezervare că acest articol nu este o instrucțiune despre cum să lucrați cu modulul, ci doar un caz real în viața de utilizare a modulului. Poate cineva va fi de folos.

    În urma auditului au fost identificate următoarele probleme principale:
    1. Acceleratorul PHP trebuie instalat pe server
    2. Pe pagina / preț / pagină, componenta „nvisions: menu.sections” are probleme mari - se generează o solicitare către baza de date, care este procesată aproape un minut - acesta este principalul motiv pentru încărcarea lungă a paginii, deoarece precum și o sarcină grea pe server.
    3. Baza de date rulează lent (687 de cereri de scriere pe secundă sunt foarte mici), problema poate fi în configurația serverului. Este necesar să traduceți tabelele în InnoDB și să configurați InnoDB
    4. Sistemul de fișiere nu este foarte rapid, pot fi caracteristicile hardware ale serverului (de exemplu, RAID), dar, în principiu, site-ul ar trebui să funcționeze bine cu această viteză.
    5. Problema din șablonul site-ului (nu există link-uri existente) trebuie eliminată - necesită o mulțime de resurse.
    6. Este necesar să configurați o arhitectură cu două niveluri pe server (servire conținut static prin nginx), acest lucru va reduce semnificativ sarcina server Apache, stabilizează consumul de memorie în condiții de încărcare, prin urmare, va accelera munca și va crește fiabilitatea proiectului în ansamblu.

    Să analizăm informațiile modulului de performanță 1C-Bitrix:

    Figura arată clar problemele cu serverul de baze de date, cel mai probabil setările nu sunt optime, deoarece server dedicat.
    Numărul de operațiuni cu fișiere este, de asemenea, suspect de scăzut.


    Probleme explicite cu codul sau componentele la /price/index.php
    Suspect de mult timp pentru generarea /bitrix/urlrewrite.php - căutați mai departe:

    Da, aici este - sursa problemelor: șablonul conține un link către o imagine inexistentă, aceasta generează o eroare 404 și forțează Apache să gestioneze această eroare și să genereze o pagină cu drepturi depline.

    Aceeași problemă afectează toate paginile site-ului asociate șablonului problematic:


    Și iată componentele problematice de pe pagină:


    Componenta de meniu are memoria cache dezactivată.
    Rezumatul paginii:

    Ei bine, iată o analiză rapidă. Cât de convenabil este modulul de performanță pentru a vă spune „unde sunt problemele”. Să începem depanarea:

    Am adăugat o poză la care era un link, ei au fost cei care au adăugat poza și nu au șters link-urile, pentru că au existat multe link-uri, inclusiv în componente terțe. De asemenea, componenta terță parte problematică (nsvision: menu.sections) a fost dezactivată pe această pagină. scopul lui nu este clar. (după oprire, nimic nu s-a schimbat extern)
    Rezultat:


    Urlrewrite.php nu este acum apelat la fiecare accesare



    După cum puteți vedea, viteza de lucru s-a dublat (!).

    Să mergem mai departe:
    Instalați eaccelerator... Nu descriu aici cum se instalează acceleratorul, pentru că aceste informații, dacă este necesar, pot fi întotdeauna găsite pe Internet.







    Rezultatul după instalarea eAccelerator: încă o creștere de două ori a performanței.

    Să mergem mai departe: Optimizarea bazei de date(traducere în InnoDB și optimizare a setărilor)


    După cum puteți vedea din testul modulului de performanță, viteza bazei de date a crescut semnificativ
    În general performanța generală după optimizarea bazei de date, aceasta a rămas neschimbată, posibil din cauza muncă lentă Sistemul de fișiere.

    ACTUALIZAȚI:
    Recomandări pentru modulul de performanță.
    Urmând recomandările modulului, dezactivați parametrul „open_basedir”, deoarece serverul este dedicat doar pentru proiectul nostru, ne referim ca securitatea in general nu va fi incalcata.

    Rezultat:


    Rezultatul, după cum se spune, este CASH

    Rămâne să rescriem componentele „strâmbe” și proiectul va zbura.

    De asemenea, instalat și configurat nginx ca proxy pentru Apache. Nu dau poze, tk. cifrele au rămas practic neschimbate. Dar, conform unei evaluări subiective, paginile sunt încărcate de câteva ori mai repede.

    Șablonul este încă generat pentru o perioadă destul de lungă (timpul de generare este aproape același cu cel al nucleului de sistem) - aparent, codul nu a fost scris optim de către dezvoltatorul anterior. Nu există timp, nici buget, nici dorință de a analiza codul altcuiva. Este mai ușor, mai rapid și mai ieftin să-ți scrii propriul cod de la zero.

    În general: Modulul de performanță este un instrument foarte util și convenabil pentru depanarea lucrărilor de proiect și server. Pentru care mulțumim dezvoltatorilor săi.

    P.S. Eu personal am puțină experiență cu Linux. M-am familiarizat mai întâi cu FreeBSD. Am fost surprins că după instalarea unor programe, fișierele de configurare sunt în general goale (de exemplu, MySQL). Am fost mulțumit de ușurința instalării software-ului din „porturi”.