Viteză redusă 1s

Sistemul 1C ocupă o poziție dominantă pe piața automatizării pentru întreprinderile mici și mijlocii. În cazul în care societatea a ales sistemul de contabilitate 1C, de obicei, angaja aproape toți angajații, de la profesioniști obișnuiți până la management. În consecință, viteza 1C depinde de viteza proceselor de afaceri ale companiei. Dacă 1C lucrează la o rată nesatisfăcătoare, afectează în mod direct activitatea întregii companii și obținerea unui profit.







De fapt, există trei metode de accelerare a 1C:

  • Creșterea capacității.
  • Optimizarea sistemului de operare și a setărilor DBMS.
  • Optimizarea codului și a algoritmilor în 1C.
Soluții recomandate

Viteză redusă 1s

Audit de performanță 1C
Viteză redusă 1s

Optimizarea lui 1C

Prima metodă necesită achiziționarea de echipamente și licențe, a treia - o mulțime de muncă de programatori și, în consecință, ambele metode duce la costuri financiare semnificative. Mai întâi de toate, trebuie să acordați atenție codului programului, deoarece nici o creștere a capacității serverului nu poate compensa codul greșit. Orice programator știe că, cu doar câteva rânduri de cod, este posibil să se creeze un proces care să încarce pe deplin resursele oricărui server.

În cazul în care compania este încrezătoare în optimitatea codului de program și încă funcționează încet, de obicei managementul ia decizia de a crește capacitatea serverului. În acest moment apare o întrebare logică: ce lipsește, cât de mult și ce trebuie adăugat în cele din urmă.

Compania 1C cu privire la cât de multe resurse are nevoie de un răspuns destul de vag, am scris mai devreme în posturile noastre. Și așa trebuie să desfășurăm în mod independent experimente și să înțelegem ce depinde performanța 1C. Experimentele cu performanța programului în EFSOL sunt descrise mai jos.

Când lucrăm cu 1C 8.2, mai ales cu configurații care utilizează formulare gestionate, sa observat un fapt ciudat: 1C funcționează mai repede pe o stație de lucru decât pe un server puternic. Și toate caracteristicile stației de lucru sunt mai slabe decât serverul.

Tabelul 1 - Configurațiile pentru care a fost efectuată testarea inițială

Stația de lucru prezintă o performanță de 155% mai mare decât serverul 1C cu performanțe sporite. Am început să înțelegem, care este problema și să restrângem cercul de căutări.

Figura 1 - Măsurători de performanță pe stația de lucru prin testul Gilev

Prima suspiciune a fost că testul Gilev era inadecvat. Măsurarea formularelor de deschidere, realizarea documentelor, generarea de rapoarte etc. instrumentele de instrumentație au arătat că testul Gilev produce o estimare proporțională cu viteza reală de funcționare din 1C.

Numărul și frecvența RAM

O analiză a informațiilor disponibile pe internet a arătat că mulți scriu despre dependența performanței 1C de frecvența memoriei. Este de la frecvență, nu de la volum. Am decis să testăm această ipoteză, deoarece avem o frecvență RAM de 1066 Mhz pe server comparativ cu 1333 Mhz pe stația de lucru, iar RAM-ul pe server este mult mai mare. Am decis să punem nu doar 1066 Mhz, dar 800 Mhz simultan, astfel încât efectul dependenței de performanță asupra frecvenței de memorie să fie mai clar. Rezultatul - productivitatea a scăzut cu 12%, până la 39,37 de unități. Serverul a pus o memorie cu o frecvență de 1333 Mhz în loc de 1066 Mhz și a primit un ușor câștig de performanță - aproximativ 11%. Productivitatea a fost de 19,53 unități. În consecință, problema nu este în memorie, deși frecvența acesteia dă o mică creștere.

Figura 2 - Măsurători de performanță pe postul de lucru după scăderea frecvenței RAM







Figura 3 - Măsurători de performanță pe server după creșterea frecvenței RAM

Următoarea ipoteză a fost asociată cu subsistemul disc. Imediat au existat două ipoteze:

  • SSD este mai bun decât unitățile SAS, chiar dacă sunt în raid de 10 ori.
  • iSCSI este lent sau nu funcționează corect.

Prin urmare, în stația de lucru a fost instalat un disc SATA normal, în loc de SSD, același lucru sa întâmplat și cu serverul - baza de date a fost plasată pe un disc SATA local. Ca rezultat, măsurătorile de performanță nu s-au schimbat. Cel mai probabil, acest lucru se întâmplă deoarece există o cantitate suficientă de memorie RAM, iar discurile practic nu sunt implicate în execuția testului.

Procesoarele de pe server sunt, desigur, mai puternice și au două, dar frecvența este puțin mai mică decât pe stația de lucru. Am decis să verificăm influența vitezei procesorului asupra performanței: pentru serverul de procesoare cu o frecvență mai mare nu a fost la îndemână, așa că am redus frecvența procesorului pe stația de lucru. Au redus la o dată la 1,6 că corelația a fost arătată mai intens. Testul a arătat că performanța a scăzut semnificativ, însă chiar și cu un procesor de 1,6 stația de lucru a emis aproape 28 de unități, ceea ce este aproape de 1,5 ori mai mare decât pe server.

Figura 4 - Măsurători de performanță pe o stație de lucru cu procesor de 1,6 Ghz

În momentul de față, există două suspiciuni legate de faptul că stația de lucru este mai rapidă chiar și cu caracteristici mult mai grave:

  1. Procesorul. Tipul de procesor de pe stația de lucru este mai potrivit pentru 1C.
  2. Chipset. Alte lucruri sunt egale, stația noastră de lucru are un chipset mai nou, poate că este în el.

Planificăm să achiziționăm componentele necesare și să continuăm testele pentru a afla în sfârșit ce depinde performanța lui 1C. În timp ce procesul de armonizare și achiziții este în curs de desfășurare, am decis să optimizăm, mai ales că nu costă nimic. Au fost identificate următoarele etape:

Pasul 1: Configurați sistemul

Pentru început, efectuați următoarele setări în BIOS și în sistemul de operare:

  1. În BIOS-ul serverului, dezactivați toate setările pentru a economisi energie în procesor.
  2. Selectați planul "Performanță maximă" din sistemul de operare.
  3. Procesorul este, de asemenea, configurat pentru performanțe maxime. Acest lucru se poate face folosind utilitarul PowerSchemeEd.

Etapa 2. Configurarea serverului SQL și a serverului 1C: Enterprise

Facem următoarele modificări la setările serverului de bază de date și 1C: Enterprise.

  1. Configurarea memoriei partajate:

    • Memoria partajată va fi activată numai pe platformă, începând cu 1C 8.2.17, pe versiunile anterioare Named Pipe va porni - ușor inferior vitezei de lucru. Această tehnologie funcționează numai dacă serviciile 1C și MSSQL sunt instalate pe același server fizic sau virtual.
  2. Se recomandă ca serviciul 1C să fie pus în modul de depanare, deoarece nu este paradoxal, dă un câștig de performanță. Implicit, depanarea pe server este dezactivată.
  3. Configurarea SQL Server:

    • Avem nevoie doar de un server, celelalte servicii care sunt relevante pentru el și, probabil, cineva le folosește, încetinesc doar munca. Oprim și dezactivăm servicii cum ar fi: FullText Search (motor de căutare propriu full text) 1C, Integration Services, etc.
    • Am setat cantitatea maximă de memorie alocată serverului. Acest lucru este necesar pentru ca serverul sql să conta pe acest volum și să curețe memoria în prealabil.
    • Setați numărul maxim de fire (lucrări maxime ale lucrătorilor) și setați prioritatea serverului (prioritate Boost).

Etapa 3. Configurarea unei baze de date de lucru

După ce serverul DBMS și 1C: Întreprinderile sunt optimizate, accesați setările bazei de date. În cazul în care baza de date nu a fost încă implementat din fișierul .dt, și tu știi dimensiunea aproximativă, dimensiunea inițializarea fișierului principal este mai bine pentru a specifica „> =“ dimensiunea bazei de date, dar este o chestiune de gust, aceasta va crește în continuare, la o matura. Trebuie însă să specificați creșterea automată a dimensiunii: aproximativ 200 MB pe bază de date și 50 MB pe jurnal, deoarece valorile implicite sunt de creștere de 1MB și de 10% fiecare încetinesc foarte mult serverul când trebuie să crească fișierul pentru fiecare a treia tranzacție. De asemenea, fișierul bazei de date de stocare și fișierul jurnal este mai bine pentru a sublinia discuri fizice diferite sau grupuri RAID, dacă utilizați o matrice RAID, și pentru a limita creșterea jurnalului. Se recomandă ca fișierul Tempdb să fie plasat pe o matrice de viteză mare, deoarece DBMS accesează adesea.

Pasul 4. Configurarea sarcinilor programate

Sarcinile planificate sunt create simplu, cu ajutorul Planului de întreținere în secțiunea Management, utilizând instrumente grafice, astfel încât nu vom descrie în detaliu modul în care se realizează acest lucru. Să vorbim despre ce operații ar trebui să fie efectuate pentru a îmbunătăți performanța.

  • Defragmentați indexurile și actualizați statisticile pe care trebuie să le efectuați zilnic, deoarece dacă indicele este fragmentat> 25%, acest lucru reduce dramatic performanța serverului.
  • Defragmentarea și actualizarea statisticilor - se face rapid și nu necesită deconectarea utilizatorilor. Se recomandă, de asemenea, să faceți zilnic.
  • Reindexarea completă se face cu blocarea bazei de date, se recomandă să o faceți cel puțin o dată pe săptămână. Firește, după reinstituirea completă, defragmentarea indicatorilor și actualizarea statisticilor se fac imediat.

Ca urmare, cu ajutorul reglării fine a sistemului, a serverului SQL și a bazei de lucru, am reușit să creștem productivitatea cu 46%. Măsurătorile au fost efectuate cu ajutorul instrumentului instrumentului 1C și cu ajutorul testului Gilev. Acesta din urmă a arătat 25,6 unități, față de 17,53, care au fost inițial.

1C funcționează încet? Comandați întreținerea informatică a computerelor și a serverelor de către specialiști cu ani de experiență în compania EFSOL sau transferați 1C la un server de la distanță puternic și cu toleranță la erori.

Integrarea sistemului. consultant







Articole similare

Trimiteți-le prietenilor: