Upp 8.3 a început să funcționeze încet. Sfaturi de automatizare. Utilizarea obiectelor DMO SQL Server

Utilizatorii se plâng adesea că „1C 8.3 este lent”: formularele documentelor se deschid lent, procesarea documentelor durează mult, programul pornește, generarea rapoartelor durează mult și așa mai departe.

În plus, astfel de „eșecuri” pot apărea în diferite programe:

Motivele pot fi diferite. Acesta nu este documente restaurate, un computer sau un server slab, serverul 1C este configurat incorect.

În acest articol vreau să mă uit la unul dintre cele mai simple și mai comune motive pentru un program lent - . Această instrucțiune va fi relevant pentru utilizatorii bazelor de date de fișiere pentru 1-2 utilizatori, unde nu există concurență pentru resurse.

Dacă sunteți interesat de o optimizare mai serioasă a opțiunilor client-server pentru funcționarea sistemului, vizitați secțiunea site-ului.

Unde sunt sarcinile programate în 1C 8.3?

Înainte să am timp să încărc programul, 1C a executat multe locuri de muncă de fundal. Le puteți vizualiza accesând meniul „Administrare”, apoi „Suport și întreținere”:

Obțineți 267 de lecții video pe 1C gratuit:

Iată cum arată fereastra cu sarcinile finalizate:

Și așa lista plina toate sarcinile programate care sunt lansate:

Printre aceste sarcini puteți vedea precum „“, încărcarea diferitelor clasificatoare, verificarea relevanței versiunii programului și așa mai departe. De exemplu, nu am nici un folos pentru aproape toate aceste sarcini. Nu păstrez înregistrări valutare, controlez singur versiunile și încarc clasificatoare după cum este necesar.

Prin urmare, este în interesul meu (și în majoritatea cazurilor în interesul dumneavoastră) să dezactivați sarcinile inutile.

Dezactivarea sarcinilor de rutină și de fundal în 1C 8.3

Simptomele și istoricul pacientului:

Munca mai multor utilizatori prin intermediul rețelei cu același fișier (bază de date) include un mecanism de blocare a rețelei. Acest lucru obligă sistemul să piardă timp prețios identificând sesiunile de înregistrare deschise și rezolvând conflictele în consecință.

Principalele semne ale blocării operațiunii:

  • lucrează rapid utilizatorul cu baza de date prin rețea în modul exclusiv și extrem de lent când lucrează mai mulți utilizatori simultan
  • experiență rapidă a utilizatorului cu o bază de date locală pe server și lucru lentor în rețea
  • atrage Sistemul de fișiere puțin sub 10 MB/sec

Așadar, mi s-a dat sarcina de a mă asigura că până la trei utilizatori pot lucra în 1C în același timp! Amuzant, nu-i așa?

Am uitat toate glumele când am văzut cu ce am de-a face: un „server” sub forma unui computer obișnuit de birou și două laptopuri.

Fericirea nu ar fi completă dacă nu ar fi minunatele sisteme de operare - pe computer și pe unul Laptop Windows 7, pe de altă parte - Windows 8.

Când încercam să postezi simultan documente pe laptopuri, unul a rămas blocat timp de aproximativ un minut, iar al doilea a ieșit din 1C cu textul de eroare „Nu a putut bloca masa...”.

Lansarea 1C pe un laptop este un spectacol separat care a durat aproximativ 3 minute!

Pe multe resurse am găsit sfaturi pentru a trece la lucrul în accesul la terminal. Din păcate, Windows 7 nu permite mijloace regulate se transformă într-un server terminal - maximum o conexiune activă. În acest caz, sesiunile rămase nu se încheie; Prin urmare, ar trebui să transferați 1C pe un sistem de operare server, unde nu există astfel de restricții. Clientul, pe propriul risc, a rezolvat problema folosind în schimb un utilitar terță parte Windows7_SP1_RDPhack.

Dar aventurile nu s-au terminat aici. Chiar și la conexiunea la terminale au existat întârzieri semnificative. Încă o dată, motoarele de căutare atotputernice m-au ajutat. Mai jos sunt sfaturi pentru accelerarea fișierului 1C, pe care le-am urmat:

1. Dezactivați utilizarea protocolului de rețea IPv6, configurați adresarea pe „vechiul” IPv4.

2. Adăugați procese 1C la excepțiile firewall Windows, precum și excepțiile antivirus sau dezactivați-le complet (mai riscant, dar un test simplu a arătat cresterea vitezei repostarea documentelor când este dezactivată Avast antivirus factor de!)

3. Începeți să indexați căutarea text integral în 1C sau dezactivați-o complet

4. Rulați Testarea și repararea bazei de date, verificând cu utilitarul ChDbfl

5. Rulați elementul Verificare configurație din configurație (dacă configurația nu este standard, aceasta poate fi utilă). Pe baza rezultatelor verificării configurației, a scăzut în mod magic în dimensiune cu aproape o treime. Nu m-am aprofundat cu exactitate în ceea ce au actualizat programatorii primii înaintea mea, dar faptul este evident.

6. Dezactivați opțiunile funcționale inutile.

7. Configurați drepturile de utilizator. (Acesta și sfatul anterior mi s-au părut stupide până când am urmărit redarea formulare gestionate la deschiderea listei de documente. Cu cât sunt mai puține lucruri inutile într-o interfață gestionată, cu atât funcționează mai rapid, de regulă)

8. Începeți să recalculați totalurile și să restabiliți secvența (o creștere semnificativă poate apărea numai dacă totalurile nu au fost restaurate de mult timp)

9. Specificați „Viteza conexiunii - scăzută” în setările listei bazei de date (acest lucru nu a dat prea mult rezultat, cu excepția faptului că imaginile subsistemelor au fost oprite :))

După parcurgerea tuturor acestor pași, baza de date a fișierelor 1C a început să funcționeze mult mai rapid. A început să se lanseze în maxim 10 secunde, iar viteza de transfer a documentelor a crescut în medie de 12 ori.

Poate că acest scurt articol vă va fi util dacă brusc trebuie să vă accelerați baza de date a fișierelor 1C.

P.S: Dar lansarea unui fișier 1C folosind accesul la rețea la un folder partajat este încă nerealist, deoarece... Chiar și cea mai rapidă unitate SSD, RAM și procesor se vor confrunta cu blocaje de rețea, iar munca mai multor utilizatori va fi practic imposibilă. Este despreîn special despre configurația UT 11.1. Configurațiile mici auto-scrise pot funcționa destul de repede chiar și în versiunea fișierului.

Adăugiri din comentarii pentru publicare:

Defragmentator de disc cu bază de fișiere

Convoluţie baza de date (poate fi utilă dacă baza de date este mare, de exemplu, pentru câțiva ani). Baza de date a clientului era destul de tânără, așa că reducerea a fost imposibilă.

Upgrade hardware - hard disk mai rapid, comutator nou, procesor etc.

Instalați pe server web, accesați folosind un client subțire. Aici părerile sunt împărțite. Unii spun că este de multe ori mai rapid, alții spun că nu se notează nicio accelerație.

Scopul principal al scrierii acestui articol este de a evita repetarea nuanțelor evidente pentru acei administratori (și programatori) care nu au câștigat încă experiență cu 1C.

Scopul secundar este ca, dacă am vreo deficiență, Infostart va fi cel mai rapid să-mi semnaleze acest lucru.

Testul lui V. Gilev a devenit deja un fel de standard „de facto”. Autorul de pe site-ul său a dat recomandări destul de clare, dar voi da doar câteva rezultate și voi comenta cele mai multe erori probabile. Desigur, rezultatele testelor pe echipamentul dvs. pot diferi, acesta este doar un ghid pentru ceea ce ar trebui să fie și pentru ce vă puteți strădui. Aș dori să observ imediat că modificările trebuie făcute pas cu pas, iar după fiecare pas, verificați ce rezultat a dat.

Sunt articole similare pe Infostart, voi pune link-uri către ele în secțiunile relevante (dacă îmi lipsește ceva, vă rog să mă sugerați în comentarii, îl voi adăuga). Deci, să presupunem că 1C este lent. Cum se diagnostichează problema și cum se înțelege cine este de vină, administratorul sau programatorul?

Date inițiale:

Calculator testat, cobai principal: HP DL180G6, echipat cu 2*Xeon 5650, 32 Gb, Intel 362i, Win 2008 r2. Pentru comparație, Core i3-2100 arată rezultate comparabile în testul cu un singur fir. Echipamentul pe care l-am luat în mod special nu era cel mai nou, dar echipament modern rezultatele sunt vizibil mai bune.

Pentru testarea serverelor separate 1C și SQL, server SQL: IBM System 3650 x4, 2*Xeon E5-2630, 32 Gb, Intel 350, Win 2008 r2.

Pentru a testa o rețea de 10 Gbit, s-au folosit adaptoare Intel 520-DA2.

Versiunea fișierului. (baza de date este pe server într-un folder partajat, clienții se conectează prin rețea, protocol CIFS/SMB). Algoritmul pas cu pas:

0. Adăugați baza de date de testare a lui Gilev la serverul de fișiere în același folder ca bazele de date principale. Ne conectăm de la computerul client și rulăm testul. Ne amintim rezultatul.

Se înțelege că chiar și pentru computerele vechi de acum 10 ani (Pentium pe socket 775 ) timpul de la clic pe comanda rapidă 1C:Enterprise până la apariția ferestrei bazei de date ar trebui să treacă mai puțin de un minut. ( Celeron = lent).

Dacă ai un computer mai rău decât un Pentium priza 775 cu 1 GB memorie cu acces aleator, atunci simpatizez cu tine și îți va fi dificil să obții o muncă confortabilă pe 1C 8.2 în versiunea fișierului. Gândiți-vă fie la upgrade (este timpul) fie la trecerea la un server terminal (sau web, în ​​cazul clientului subțire și formularelor gestionate).

Dacă computerul nu este mai rău, atunci îl puteți da pe administrator. Verificați cel puțin funcționarea rețelei, a antivirusului și a driverului de protecție HASP.

Dacă testul lui Gilev în această etapă a arătat 30 de „papagali” sau mai mult, dar baza de lucru 1C încă funcționează lent, întrebările ar trebui adresate programatorului.

1. Ca ghid pentru cât de mult poate „strânge” un computer client, verificăm doar funcționarea acestui computer, fără rețea. Am pus baza de testare calculator local(foarte disc rapid). Dacă computerul client nu are un SSD normal, atunci este creat un disc ram. Deocamdată, cel mai simplu și gratuit este Ramdisk enterprise.

Pentru a testa versiunea 8.2, este suficient un ramdisk de 256 MB și! Cel mai important. După repornirea computerului, cu discul ram în funcțiune, ar trebui să existe 100-200 MB liberi pe el. În consecință, fără un ramdisk, pentru operatie normala Memoria liberă ar trebui să fie de 300-400 MB.

Pentru a testa versiunea 8.3, un disc ram de 256 MB este suficient, dar aveți nevoie de mai multă RAM liberă.

Când testați, trebuie să vă uitați la sarcina procesorului. Într-un caz aproape de ideal (ramdisk), fișierul local 1c încarcă 1 nucleu de procesor atunci când rulează. În consecință, dacă în timpul testării miezul procesorului nu este complet încărcat, căutați punctele slabe. Puțin emoționantă, dar în general corectă, este descrisă influența procesorului asupra funcționării lui 1C. Doar pentru referință, chiar și pe Core i3-urile moderne cu frecvențe înalte, numerele 70-80 sunt destul de realiste.

Cele mai frecvente erori în această etapă.

a) Antivirus configurat incorect. Există multe antivirusuri, setările pentru fiecare sunt diferite, voi spune doar că cu o configurație corespunzătoare, nici web-ul și nici Kaspersky 1C nu interferează. Cu setările implicite, aproximativ 3-5 papagali (10-15%) pot fi luați.

b) Modul de performanță. Din anumite motive, puțini oameni acordă atenție acestui lucru, dar efectul este cel mai semnificativ. Dacă aveți nevoie de viteză, atunci trebuie să faceți acest lucru, atât pe computerele client, cât și pe server. ( Buna descriere la Gilev. Singurul avertisment este că pentru unii plăci de bază Dacă dezactivați Intel SpeedStep, nu puteți activa TurboBoost).

Pe scurt, în timp ce rulează 1C, se așteaptă mult un răspuns de la alte dispozitive (disc, rețea etc.). În așteptarea unui răspuns, dacă modul de performanță este activat, procesorul își scade frecvența. Un răspuns vine de la dispozitiv, 1C (procesorul) trebuie să funcționeze, dar primele cicluri de ceas sunt la o frecvență redusă, apoi frecvența crește - și 1C așteaptă din nou un răspuns de la dispozitiv. Și așa - de multe sute de ori pe secundă.

Puteți (și preferabil) să activați modul de performanță în două locuri:

Prin BIOS. Dezactivați modurile C1, C1E, Intel C-state (C2, C3, C4). În diferite bios ele sunt numite diferit, dar sensul este același. Este nevoie de mult timp pentru a căuta, este necesară o repornire, dar dacă o faci o dată, atunci o poți uita. Dacă faci totul corect în BIOS, viteza va crește. Pe unele plăci de bază, puteți configura setările BIOS, astfel încât modul de performanță Windows să nu joace un rol. (Exemple setări BIOS la Gilev). Aceste setări se referă în principal la procesoarele de server sau la BIOS-uri „avansate”, dacă nu ați găsit asta și NU aveți Xeon, este în regulă.

Panou de control - Alimentare - Performanță ridicată. Minus - dacă computerul nu a fost întreținut de mult timp, va face un zgomot mai puternic al ventilatorului, se va încălzi mai mult și va consuma mai multă energie. Aceasta este o taxă de performanță.

Cum să verificați dacă modul este activat. Lansați task manager - performanță - monitor resurse - CPU. Așteptăm până când procesorul este ocupat cu nimic.

Acestea sunt setările implicite.

În starea C BIOS inclus,

modul de consum echilibrat de energie


În starea C BIOS inclus, mod de înaltă performanță

Pentru Pentium și Core te poți opri acolo,

Încă puteți stoarce puțini „papagali” din Xeon


În starea C BIOS oprit, mod de înaltă performanță.

Dacă nu utilizați Turbo boost, așa ar trebui să arate

server reglat pentru performanță


Și acum numerele. Permiteți-mi să vă reamintesc: Intel Xeon 5650, disc ram. În primul caz, testul arată 23,26, în ultimul - 49,5. Diferența este aproape dublă. Cifrele pot varia, dar raportul rămâne în esență același pentru Intel Core.

Dragi administratori, puteți critica 1C cât de mult doriți, dar dacă utilizatorii finali au nevoie de viteză, trebuie să activați modul de înaltă performanță.

c) Turbo Boost. Mai întâi trebuie să înțelegeți dacă procesorul dvs. acceptă această funcție, de exemplu. Dacă este compatibil, atunci puteți obține încă o performanță destul de legală. (Nu vreau să abordez problemele de overclockare a frecvenței, în special serverele, fă-o pe riscul și riscul tău. Dar sunt de acord că creșterea vitezei Bus de la 133 la 166 dă o creștere foarte vizibilă atât a vitezei, cât și a disipării căldurii)

Cum să porniți turbo boost este scris, de exemplu, . Dar! Pentru 1C există câteva nuanțe (nu cele mai evidente). Dificultatea este că efectul maxim al turbo boost are loc atunci când starea C este activată. Și obținem ceva de genul acesta:

Vă rugăm să rețineți că multiplicatorul este maxim, viteza Core este frumoasă și performanța este ridicată. Dar ce se va întâmpla ca rezultat cu 1s?

Factor

Viteza de bază (frecvență), GHz

CPU-Z Single Thread

Testul Gilev Ramdisk

versiunea fișierului

Testul Gilev Ramdisk

client server

Fără Turbo Boost

Stare C oprită, Turbo boost

53.19

40,32

Stare C activată, Turbo boost

1080

53,13

23,04

Dar până la urmă se dovedește că, conform testelor de performanță CPU, versiunea cu un multiplicator de 23 este înainte, conform testelor lui Gilev în versiunea de fișier performanța cu un multiplicator de 22 și 23 este aceeași, dar în client-server versiune - versiunea cu un multiplicator de 23 este groaznic teribil (chiar dacă starea C este setată la nivelul 7, este totuși mai lentă decât cu starea C dezactivată). Prin urmare, recomandarea este să verificați singur ambele opțiuni și să o alegeți pe cea mai bună. În orice caz, diferența dintre 49,5 și 53 de papagali este destul de semnificativă, mai ales fără prea mult efort.

Concluzie - turbo boost trebuie activat. Permiteți-mi să vă reamintesc că nu este suficient să activați elementul Turbo boost în BIOS, trebuie să vă uitați și la alte setări (BIOS: QPI L0s, L1 - dezactivare, scrubbing la cerere - dezactivare, Intel SpeedStep - activare, Turbo boost - activați Panou de control - Opțiuni de alimentare - Performanță ridicată). Și tot (chiar și pentru versiunea de fișier) aș alege opțiunea în care c-state este dezactivat, chiar dacă multiplicatorul este mai mic. Se va dovedi ceva de genul asta...

Un punct destul de controversat este frecvența memoriei. De exemplu, se arată că frecvența memoriei are o influență foarte puternică. Testele mele nu au relevat o asemenea dependență. Nu voi compara DDR 2/3/4, voi arăta rezultatele modificării frecvenței în cadrul aceleiași linii. Memoria este aceeași, dar în BIOS suntem nevoiți să setăm frecvențe mai mici.




Și rezultatele testelor. 1C 8.2.19.83, pentru versiunea de fișier local ramdisk, pentru client-server 1C și SQL pe un singur computer, memorie partajată. Turbo Boost este dezactivat în ambele versiuni. 8.3 arată rezultate comparabile.

Diferența este în cadrul erorii de măsurare. Am scos în mod special capturi de ecran ale CPU-Z pentru a arăta că, odată cu o schimbare a frecvenței, se schimbă și alți parametri, aceeași Latență CAS și Întârziere RAS la CAS, care neutralizează schimbarea frecvenței. Diferența va fi atunci când modulele de memorie sunt modificate fizic, de la mai lent la mai rapid, dar nici acolo cifrele nu sunt deosebit de semnificative.

2. După ce am sortat procesorul și memoria computerului client, trecem la următorul loc foarte important - rețeaua. S-au scris multe volume de cărți despre reglarea rețelei, există articole despre Infostart (, și altele), dar aici nu mă voi concentra pe acest subiect. Înainte de a începe testarea 1C, vă rugăm să vă asigurați că iperf între două computere arată întreaga lățime de bandă (pentru cardurile de 1 Gbit - ei bine, cel puțin 850 Mbit, sau mai bine 950-980), că sfatul lui Gilev a fost urmat. Apoi - cel mai simplu test de funcționare va fi, destul de ciudat, copierea unui fișier mare (5-10 gigaocteți) în rețea. Un semn indirect de funcționare normală pe o rețea de 1 Gbit va fi viteza medie de copiere de 100 MB/sec, funcționare bună - 120 MB/sec. Aș dori să vă atrag atenția asupra faptului că punctul slab (inclusiv) poate fi încărcarea procesorului. SMB Protocolul de pe Linux este destul de slab paralelizat, iar în timpul funcționării poate „mânca” destul de ușor un nucleu de procesor și nu mai consumă.

Și mai departe. Cu setările implicite de Windows, clientul funcționează cel mai bine cu un server Windows (sau chiar windows functioneaza station) si protocolul SMB/CIFS, clientul linux (debian, ubuntu nu s-a uitat la celelalte) merge mai bine cu linux si NFS (functioneaza si cu SMB, dar papagalii sunt mai mari pe NFS). Faptul că în timpul copierii liniare un server Windows Linux pe NFS este copiat într-un flux mai rapid nu înseamnă nimic. Tuningul Debian pentru 1C este un subiect pentru un articol separat, încă nu sunt pregătit pentru asta, deși pot spune că în versiunea de fișier am obținut performanțe chiar puțin mai bune decât versiunea Win pe același echipament, dar cu postgres cu peste 50 de utilizatori am încă totul foarte rău.

Cel mai important , pe care administratorii „arși” îl știu, dar începătorii nu țin cont. Există multe modalități de a seta calea către baza de date 1c. Puteți face \\server\share, puteți face \\192.168.0.1\share, puteți utiliza net z: \\192.168.0.1\share (și în unele cazuri această metodă va funcționa, dar nu întotdeauna) și apoi specificați unitatea Z Se pare că toate aceste căi indică același loc, dar pentru 1C există o singură cale care oferă performanțe normale destul de fiabile. Deci, iată ce trebuie să faceți corect:

ÎN Linie de comanda(sau în politici, sau după cum preferați) - utilizați net DriveLetter: \\server\share. Exemplu: net use m:\\server\bases. Subliniez în mod special NU adresa IP și anume Nume Server. Dacă numele serverului nu este vizibil, adăugați-l la dns de pe server sau local la fișierul hosts. Dar adresa trebuie să fie după nume. În consecință, în drum spre baza de date, accesați acest disc (vezi imaginea).

Și acum voi arăta cu cifre de ce acesta este sfatul. Date inițiale: Intel X520-DA2, Intel 362, Intel 350, Realtek 8169 OS Win 2008 R2, Win 7, Debian 8. Ultimele drivere, actualizări aplicate. Înainte de testare, m-am asigurat că Iperf oferă toată lățimea de bandă (cu excepția cardurilor de 10 Gbit, a reușit să stoarce doar 7,2 Gbit, voi vedea de ce mai târziu, serverul de testare nu este încă configurat corect). Discurile sunt diferite, dar peste tot există un SSD (am introdus special un singur disc pentru testare, nu este încărcat cu nimic altceva) sau un raid de la un SSD. Viteza de 100 Mbit a fost obținută prin limitarea setărilor adaptorului Intel 362 Nu a existat nicio diferență între Intel 350 de cupru de 1 Gbit și Intel X520-DA2 de 1 Gbit (obținut prin limitarea vitezei adaptorului). Performanță maximă, turbo boost este dezactivat (doar pentru comparabilitate a rezultatelor, turbo boost pentru rezultate bune adaugă puțin mai puțin de 10%, pentru rezultate proaste este posibil să nu aibă niciun efect). Versiunile 1C 8.2.19.86, 8.3.6.2076. Nu dau toate numerele, ci doar pe cele mai interesante, ca să ai cu ce să compari.

Win 2008 - Win 2008

contact prin adresa ip

Win 2008 - Win 2008

Sunând pe nume

Win 2008 - Win 2008

Contact prin adresa IP

Win 2008 - Win 2008

Sunând pe nume

Win 2008 - Win 7

Sunând pe nume

Win 2008 - Debian

Sunând pe nume

Win 2008 - Win 2008

Contact prin adresa IP

Win 2008 - Win 2008

Sunând pe nume

11,20 26,18 15,20 43,86 40,65 37,04 16,23 44,64
1C 8.2 11,29 26,18 15,29 43,10 40,65 36,76 15,11 44,10
8.2.19.83 12,15 25,77 15,15 43,10 14,97 42,74
6,13 34,25 14,98 43,10 39,37 37,59 15,53 42,74
1C 8.3 6,61 33,33 15,58 43,86 40,00 37,88 16,23 42,74
8.3.6.2076 33,78 15,53 43,48 39,37 37,59 42,74

Concluzii (din tabel și din experienta personala. Se aplică numai versiunii fișierului):

Prin intermediul rețelei, puteți obține numere destul de normale pentru lucru dacă această rețea este configurată corect și calea este introdusă corect în 1C. Chiar și primul Core i3 poate produce cu ușurință peste 40 de papagali, ceea ce este destul de bine, iar aceștia nu sunt doar papagali, în munca reală diferența este și ea vizibilă. Dar! Limitarea atunci când lucrați cu mai mulți (mai mult de 10) utilizatori nu va mai fi rețeaua, aici 1 Gbit este încă suficient, dar blocarea în timpul lucrului cu mai mulți utilizatori (Gilev).

Platforma 1C 8.3 este de multe ori mai pretențioasă în ceea ce privește configurarea corectă a rețelei. Setări de bază - vezi Gilev, dar rețineți că totul poate fi influențat. Am văzut o accelerare de la dezinstalarea (și nu doar de la oprirea) antivirusului, de la eliminarea protocoalelor precum FCoE, de la schimbarea driverelor la o versiune mai veche, dar certificată Microsoft (în special pentru carduri ieftine precum ASUS și DLC), de la scoaterea celei de-a doua plăci de rețea. de pe server. Există o mulțime de opțiuni, configurați-vă rețeaua cu atenție. Poate exista o situație în care platforma 8.2 oferă numere acceptabile, iar 8.3 - de două sau chiar de mai multe ori mai puțin. Încercați să jucați cu versiunile platformei 8.3, uneori obțineți un efect foarte mare.

1C 8.3.6.2076 (poate mai târziu, încă nu am căutat versiunea exactă) este încă mai ușor de configurat prin rețea decât 8.3.7.2008. Am reușit să obțin o funcționare normală în rețea din 8.3.7.2008 (la papagalii comparabili) doar de câteva ori nu am putut să o repet pentru un caz mai general. Nu am înțeles mare lucru, dar judecând după împachetarea picioarelor de la Process Explorer, înregistrarea acolo nu este la fel de bună ca în 8.3.6.

În ciuda faptului că atunci când lucrați pe o rețea de 100 Mbit, graficul său de încărcare este mic (putem spune că rețeaua este gratuită), viteza de operare este totuși mult mai mică decât pe 1 Gbit. Motivul este latența rețelei.

Toate celelalte lucruri fiind egale (o rețea care funcționează bine) pentru 1C 8.2, conexiunea Intel-Realtek este cu 10% mai lentă decât Intel-Intel. Dar realtek-realtek poate da, în general, o tasare bruscă din senin. Prin urmare, dacă aveți bani, este mai bine să păstrați cardurile de rețea Intel peste tot dacă nu aveți bani, atunci instalați Intel doar pe server (CO); Și există de multe ori mai multe instrucțiuni pentru reglarea plăcilor de rețea Intel.

Setările implicite antivirus (folosind drweb versiunea 10 ca exemplu) ocupă aproximativ 8-10% din papagali. Dacă îl configurați așa cum trebuie (permiteți procesului 1cv8 să facă totul, deși nu este sigur), viteza este aceeași ca și fără un antivirus.

NU citiți guru Linux. Un server cu samba este grozav și gratuit, dar dacă instalați Win XP sau Win7 (sau și mai bine - server OS) pe server, atunci versiunea de fișier a 1c va funcționa mai rapid. Da, samba și stiva de protocoale și setările de rețea și multe, multe altele pot fi bine reglate în debian/ubuntu, dar acest lucru este recomandat specialiștilor. Nu are rost să instalezi Linux cu setările implicite și apoi să spui că este lent.

Este o idee destul de bună să verificați funcționarea discurilor conectate prin utilizarea rețelei folosind fio . Cel puțin va fi clar dacă acestea sunt probleme cu platforma 1C, sau cu rețea/disc.

Pentru versiunea pentru un singur utilizator, nu mă pot gândi la teste (sau la o situație) în care diferența dintre 1 Gbit și 10 Gbit ar fi vizibilă. Singurul lucru în care 10 Gbit pentru versiunea de fișier a dat rezultate mai bune este conectarea discurilor prin iSCSI, dar acesta este un subiect pentru un articol separat. Totuși, cred că pentru versiunea de fișier cardurile de 1 Gbit sunt suficiente.

Nu înțeleg de ce, cu o rețea de 100 Mbit, 8.3 funcționează considerabil mai repede decât 8.2, dar a fost un fapt. Toate celelalte echipamente, toate celelalte setări sunt absolut aceleași, doar că într-un caz este testat 8.2, iar în celălalt - 8.3.

NFS neajustat win-win sau win-lin dă 6 papagali, nu i-am inclus în tabel. După tuning am primit 25, dar a fost instabil (diferența de măsurători a fost mai mare de 2 unități). Nu pot da nicio recomandare încă folosind Windowsși protocolul NFS.

După toate setările și verificările, rulăm din nou testul de pe computerul client și ne bucurăm de rezultatul îmbunătățit (dacă funcționează). Dacă rezultatul s-a îmbunătățit, există mai mult de 30 de papagali (și mai ales mai mult de 40), mai puțin de 10 utilizatori lucrează în același timp, iar baza de date de lucru este încă lentă - aproape sigur o problemă cu programatorul (sau aveți a atins deja capacitățile de vârf ale versiunii fișierului).

Server terminal. (baza de date este pe server, clienții se conectează prin rețea, protocol RDP). Algoritmul pas cu pas:

0. Adăugați baza de date de testare a lui Gilev la server în același folder ca bazele de date principale. Ne conectăm de pe același server și rulăm testul. Ne amintim rezultatul.

1. La fel ca în versiunea de fișier, am configurat lucrarea. În cazul unui server terminal, procesorul joacă în general rolul principal (se presupune că nu există puncte slabe evidente, cum ar fi lipsa memoriei sau o cantitate imensă de software inutil).

2. Configurarea plăcilor de rețea în cazul unui server terminal nu are practic niciun efect asupra funcționării lui 1c. Pentru a asigura un confort „special”, dacă serverul tău produce mai mult de 50 de papagali, te poți juca cu versiuni noi ale protocolului RDP, doar pentru confortul utilizatorilor, răspuns mai rapid și derulare.

3. Dacă un număr mare de utilizatori lucrează activ (și aici puteți încerca deja să conectați 30 de persoane la o bază de date, dacă încercați), este foarte recomandabil să instalați o unitate SSD. Din anumite motive, se crede că discul nu afectează în mod deosebit funcționarea lui 1C, dar toate testele sunt efectuate cu cache-ul controlerului activat pentru scriere, ceea ce este incorect. Baza de testare este mică, se potrivește destul de bine în cache, de unde și numerele mari. Pe bazele de date reale (mari) totul va fi complet diferit, astfel încât memoria cache este dezactivată pentru teste.

De exemplu, am verificat funcționarea testului Gilev cu diferite opțiuni de disc. Am instalat discurile din ce era la îndemână, doar pentru a arăta tendința. Diferența dintre 8.3.6.2076 și 8.3.7.2008 este mică (în versiunea Ramdisk Turbo boost 8.3.6 produce 56.18 și 8.3.7.2008 produce 55.56, la alte teste diferența este și mai mică). Consum de energie - performanță maximă, turbo boost dezactivat (dacă nu se specifică altfel).

Raid 10 4x SATA 7200

ATA ST31500341AS

Raid 10 4x SAS 10k

Raid 10 4x SAS 15k

Un singur SSD

Ramdisk

Cache-ul activat

Controler RAID

21,74 28,09 32,47 49,02 50,51 53,76 49,02
1C 8.2 21,65 28,57 32,05 48,54 49,02 53,19
8.2.19.83 21,65 28,41 31,45 48,54 49,50 53,19
33,33 42,74 45,05 51,55 52,08 55,56 51,55
1C 8.3 33,46 42,02 45,05 51,02 52,08 54,95
8.3.7.2008 35,46 43,01 44,64 51,55 52,08 56,18

Cache-ul controlerului RAID activat elimină toate diferențele dintre discuri, numerele sunt aceleași atât pentru sat, cât și pentru cas. Testarea cu el pe o cantitate mică de date este inutilă și nu este indicativă de niciun fel.

Pentru platforma 8.2, diferența de performanță între opțiunile SATA și SSD este mai mult decât dublă. Aceasta nu este o greșeală de tipar. Dacă te uiți la monitorul de performanță în timpul testului pe unitățile SATA. apoi puteți vedea clar „Timp de funcționare a discului activ (în%)” 80-95. Da, dacă activați memoria cache a discurilor în sine pentru înregistrare, viteza va crește la 35, dacă activați memoria cache a controlerului raid - până la 49 (indiferent de ce discuri sunt testate în acest moment). Dar aceștia sunt papagali cache sintetici în munca reală, cu baze de date mari, nu va exista niciodată un raport de accesare în cache de scriere de 100%.

Viteza chiar și a SSD-urilor ieftine (am testat pe Agility 3) este suficientă pentru a rula versiunea fișierului. Resursa de înregistrare este o altă problemă, trebuie să o priviți în fiecare caz specific, este clar că Intel 3700 o va avea cu un ordin de mărime mai mare, dar prețul este corespunzător. Și da, înțeleg asta când testez unitate SSD De asemenea, testez cache-ul acestui disc într-o măsură mai mare, rezultatele reale vor fi mai mici.

Cea mai corectă soluție (din punctul meu de vedere) ar fi să alocați 2 discuri SSD într-un raid în oglindă pentru o bază de date de fișiere (sau mai multe baze de date de fișiere) și să nu plasați nimic altceva acolo. Da, cu o oglindă, SSD-urile se uzează la fel, iar acesta este un minus, dar cel puțin electronica controlerului este protejată cumva de erori.

Principalele avantaje ale unităților SSD pentru versiunea de fișiere vor apărea atunci când există multe baze de date, fiecare cu mai mulți utilizatori. Dacă există 1-2 baze de date și există aproximativ 10 utilizatori, atunci discuri SAS vor fi suficiente. (dar în orice caz, uită-te la încărcarea acestor discuri, cel puțin prin perfmon).

Principalele avantaje ale unui server terminal sunt că poate avea clienți foarte slabi, iar setările de rețea afectează mult mai puțin serverul terminal (din nou, K.O.).

Concluzii: dacă server terminal rulați testul Gilev (de pe același disc unde se află bazele de date de lucru) și în acele momente când baza de date de lucru încetinește, iar testul Gilev arată un rezultat bun (peste 30) - atunci programatorul este cel mai probabil să fie vinovat pentru funcționarea lentă a bazei de date principale de lucru.

Dacă testul lui Gilev arată numere mici și aveți un procesor cu ceas mare și discuri rapide, atunci administratorul trebuie să ia cel puțin perfmon, înregistrând toate rezultatele undeva și să urmărească, să observe și să tragă concluzii. Nu va exista un sfat definitiv.

Opțiune client-server.

Testele au fost efectuate doar pe 8.2, deoarece pe 8.3 totul depinde destul de serios de versiune.

Pentru testare, am ales diferite opțiuni de server și rețele între ele pentru a arăta principalele tendințe.

SQL: Xeon E5-2630

SQL: Xeon E5-2630

Fibre Channel - SSD

SQL: Xeon E5-2630

Fibre Channel - SAS

SQL: Xeon E5-2630

SSD local

SQL: Xeon E5-2630

Fibre Channel - SSD

SQL: Xeon E5-2630

SSD local

1C: Xeon 5650 =

1C: Xeon 5650 =

Memorie partajată

1C: Xeon 5650 =

1C: Xeon 5650 =

1C: Xeon 5650 =

16,78 18,23 16,84 28,57 27,78 32,05 34,72 36,50 23,26 40,65 39.37
1C 8.2 17,12 17,06 14,53 29,41 28,41 31,45 34,97 36,23 23,81 40,32 39.06
16,72 16,89 13,44 29,76 28,57 32,05 34,97 36,23 23,26 40,32 39.06

Se pare că am luat în considerare toate opțiunile interesante, dacă mai este ceva care vă interesează, scrieți în comentarii, voi încerca să o fac.

SAS pe sistemele de stocare este mai lent decât SSD-urile locale, chiar dacă sistemele de stocare au dimensiuni mai mari de cache. SSD-urile, atât locale, cât și pe sistemele de stocare pentru testarea lui Gilev, funcționează la viteze comparabile. Nu cunosc niciun test standard cu mai multe fire (nu doar înregistrarea, ci toate echipamentele), cu excepția testului de încărcare 1C de la MCC.

Schimbarea serverului 1C de la 5520 la 5650 aproape a dublat performanța. Da, configurațiile serverului nu se potrivesc complet, dar arată o tendință (nicio surpriză).

Creșterea frecvenței pe serverul SQL dă cu siguranță un efect, dar nu același ca pe serverul 1C MS SQL este excelent (dacă o cereți) pentru a folosi multi-core și memorie liberă;

Schimbarea rețelei între 1C și SQL de la 1 Gbit la 10 Gbit dă aproximativ 10% papagali. ma asteptam la mai mult.

Activarea memoriei partajate dă în continuare un efect, deși nu de 15%, așa cum este descris. Asigurați-vă că o faceți, din fericire, este rapid și ușor. Dacă în timpul instalării cineva a dat serverului SQL o instanță numită, atunci pentru ca 1C să funcționeze, numele serverului trebuie specificat nu prin FQDN (tcp/ip va funcționa), nu prin localhost sau doar ServerName, ci prin ServerName\InstanceName, de exemplu zz-test\zztest. (În caz contrar, va apărea o eroare DBMS: Microsoft SQL Server Native Client 10.0: Furnizor de memorie partajată: Biblioteca de memorie partajată utilizată pentru a stabili o conexiune la SQL Server 2000 nu a fost găsită. HRESULT=80004005, HRESULT=80004005, HRESULT=80004005, SQLSrvr: SQLSTATE=08001, stare=1, Severitate=10, nativ=126, linie=0).

Pentru mai puțin de 100 de utilizatori, singurul punct în care îl împărțim în două servere separate este o licență Win 2008 Std (și mai veche), care acceptă doar 32 GB de RAM. În toate celelalte cazuri, 1C și SQL trebuie să fie instalate pe un singur server și să li se ofere mai multă memorie (cel puțin 64 GB). A oferi MS SQL mai puțin de 24-28 GB de RAM este o lăcomie nejustificată (dacă crezi că ai suficientă memorie și totul funcționează bine, poate că versiunea de fișier a 1C ar fi suficientă pentru tine?)

Cât de rău funcționează combinația dintre 1C și SQL mașină virtuală- subiectul unui articol separat (hint - vizibil mai rău). Nici în Hyper-V totul nu este atât de clar...

Modul de performanță echilibrat este rău. Rezultatele sunt destul de conforme cu versiunea fișierului.

Multe surse spun că modul de depanare (ragent.exe -debug) determină o scădere semnificativă a performanței. Ei bine, se reduce, da, dar nu aș numi 2-3% un efect semnificativ.

Foarte des oamenii vin la noi cu întrebări precum:

  • De ce serverul 1C încetinește?
  • Computerul 1C este foarte lent
  • Clientul 1C este teribil de lent

Uneori, ca o soluție a problemei, oferim clienților un server pentru 1C de închiriat fără frâne, cu opțiunea de configurare a serverului și sistem de operare, puteți configura serverul online pe site-ul partenerului nostru, folosind link-ul https://1cloud.ru capitol Servicii, capitolul Server virtual.

Ce să faci și cum să-l depășești și așa mai departe în ordine:

Clienții lucrează foarte lent cu versiunea de server a 1C

Pe lângă funcționarea lentă a 1C, există și lucrul lent cu fișierele de rețea. Problema apare în timpul funcționării normale și cu RDP

pentru a rezolva asta, după fiecare instalare a Seven sau a serverului 2008, încep mereu

netsh int tcp set global autotuning=dezactivat

netsh int tcp set global autotuninglevel=dezactivat

netsh int tcp set global rss=dezactivat chimney=dezactivat

iar reteaua functioneaza fara probleme

uneori, cea mai bună opțiune este:

netsh interfață tcp set global autotuning= foarte restricționat

asa arata instalatia

Configurați paravanul de protecție antivirus sau Windows

Cum să configurați un paravan de protecție antivirus sau Windows pentru rularea unui server 1C (o combinație de 1C Server: Enterprise și MS SQL 2008, de exemplu).

Adăugați reguli:

  • Dacă serverul SQL acceptă conexiuni pe portul TCP standard 1433, atunci îl permitem.
  • Dacă portul SQL este dinamic, atunci conexiunile la aplicația %ProgramFiles%\ trebuie să fie permise Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Binn\sqlservr.exe.
  • Serverul 1C rulează pe porturile 1541, clusterul 1540 și intervalul 1560-1591. Din motive complet mistice, uneori o astfel de listă de porturi deschise încă nu permite conexiuni la server. Pentru a vă asigura că funcționează, permiteți intervalul 1540-1591.

Reglarea performanței serverului/calculatorului

Pentru ca computerul să funcționeze la performanță maximă, trebuie să-l configurați astfel:

1. Setări BIOS

  • În BIOS-ul serverului, dezactivăm toate setările pentru a economisi puterea procesorului.
  • Dacă există „C1E” și asigurați-vă că vă DECONECTAȚI!!
  • Pentru unele sarcini nu foarte paralele, se recomandă, de asemenea, să dezactivați hypertrading în BIOS
  • În unele cazuri (în special pentru HP!) trebuie să intrați în BIOS-ul serverului și să opriți elementele de acolo care au EIST, Intel SpeedStep și C1E în numele lor.
  • În schimb, trebuie să găsiți elemente legate de procesor acolo care au Turbo Boost în numele lor și să le ACTIVați.
  • Dacă în BIOS există o indicație generală a unui mod de economisire a energiei și porniți-l performanță maximă(poate fi numit și „agresiv”)

2. Setări de schemă în sistemul de operare - Performanță ridicată

Serverele cu arhitectură Intel Sandy Bridge pot schimba în mod dinamic frecvențele procesorului.

Uneori, soluția la problema funcționării lente a unui server 1C este echipamente învechite sau stricate, în acest caz oferim clienților un server pentru 1C de închiriat fără frâne, cu o alegere între configurația serverului și sistemul de operare, o puteți face pe site-ul nostru. site-ul partenerului, la link https://1cloud.ru Secțiunea Servicii, secțiunea Server virtual.

Dacă aveți întrebări, vă rugăm să contactați:

  • sunați la +7-812-385-55-66 în Sankt Petersburg
  • scrie la adresa
  • lăsați o aplicație pe site-ul nostru pe pagina „Aplicare online”.

2. Caracteristicile programului. Adesea, chiar și cu setări optime, 1C funcționează foarte lent. Performanța scade mai ales când numărul de lucrători simultan cu baza de date depășește 4-5 utilizatori.

Cine esti tu in companie?

Soluția la problema funcționării lente 1C depinde de cine ești în companie. Dacă ești un tehnician, citește mai departe. Dacă sunteți director sau contabil, accesați linkul special ↓

Lățimea de bandă a rețelei

De regulă, cu unul baza de informatii(IB) nu lucrează unul, ci mai mulți utilizatori. În același timp, există un schimb constant de date între computerul pe care este instalat clientul 1C și computerul pe care se află securitatea informațiilor. Volumul acestor date este destul de semnificativ. Adesea apare o situație când o rețea locală care funcționează la o viteză de 100 Mbit/s, care este cea mai comună viteză, pur și simplu nu poate face față sarcinii. Și din nou utilizatorul se plânge că programul este lent.

Fiecare dintre acești factori în mod individual reduce deja semnificativ viteza programului, dar cel mai neplăcut lucru este că, de obicei, aceste lucruri se adună.

Acum să ne uităm la câteva soluții la problema vitezei scăzute de operare 1C și a costului acestora, folosind exemplul retea locala din 10 calculatoare medii.

Soluția unu. Modernizarea infrastructurii

Aceasta este poate cea mai evidentă soluție. Să calculăm costul minim al acestuia.

Cel puțin, pentru fiecare computer avem nevoie de un stick de 2 GB RAM, care costă, în medie, 1.500 de ruble, card LAN cu suport pentru viteza de 1 Gbit/s, costă aproximativ 700 de ruble. În plus, veți avea nevoie de cel puțin 1 router care acceptă o viteză de 1 Gbit/s, care va costa aproximativ 4.000 de ruble. Costul total - 26.000 de ruble pentru echipament, excluzând munca.

În principiu, viteza poate crește semnificativ, însă acum nu mai este posibil să cumpărați computere ieftine pentru birou. In afara de asta, această decizie nu este valabil pentru cei care folosesc Wi-Fi sau doresc să lucreze prin Internet - în cazul lor, viteza rețelei poate fi de zeci de ori mai mică. Aceasta ridică întrebarea: „Este posibil să se implementeze întregul program pe un server puternic, astfel încât computerul utilizatorului să nu participe la calcule complexe, dar a servit pur și simplu pentru a transmite o imagine?” Apoi puteți lucra chiar și pe computere foarte slabe, chiar și pe rețele cu lățime de bandă redusă. Desigur, astfel de soluții există.

Soluția a doua. Terminal Server

A câștigat o mare popularitate în zilele lui 1C 7. Implementat pe server versiuni Windowsși face față perfect sarcinii noastre. Cu toate acestea, are capcanele sale, și anume costul licențelor.

Se sistem de operare va costa aproximativ 40.000 de ruble. În plus, vom avea nevoie de toți cei care plănuiesc să lucreze în 1C Licență Windows Server CAL, care costă aproximativ 1.700 de ruble și o licență CAL Windows Remote Desktop Services, care costă aproximativ 5.900 de ruble.

După ce am calculat costul pentru o rețea de 10 computere, ajungem la 116.000 de ruble. doar pentru o licenta. Adăugați la aceasta costul serverului în sine (cel puțin 40.000 de ruble) și costul muncii de implementare, cu toate acestea, chiar și fără aceasta, prețul pentru licențe s-a dovedit a fi impresionant.

Soluția trei. Service 1C Enterprise

1C și-a dezvoltat propria soluție la această problemă, care poate crește semnificativ viteza programului. Dar există și aici o nuanță.

Faptul este că costul unei astfel de soluții variază de la 50.000 la 80.000 de ruble, în funcție de ediție. Pentru o companie cu până la 15 utilizatori se dovedește a fi destul de scump. S-au pus mari speranțe pe „mini-serverul de întreprindere 1C”, care, potrivit companiei 1C, este destinat întreprinderilor mici și costă în jur de 10.000 - 15.000 de ruble.

Cu toate acestea, atunci când a fost pus în vânzare, acest produs a fost o mare dezamăgire. Cert este că numărul maxim de utilizatori cu care mini-serverul putea fi folosit a fost de doar 5.

Așa cum a scris un programator 1C pe forum: „Încă nu este clar de ce 1C a ales exact 5 conexiuni! Problemele încep doar cu 4 utilizatori, dar cu cinci totul se termină. Dacă doriți să conectați o a șasea persoană, plătiți încă 50 de mii. Am putea face cel puțin 10 conexiuni...”

Desigur, mini-serverul și-a găsit și consumatorul. Cu toate acestea, pentru companiile în care 5 sau mai multe persoane lucrează cu 1C, nu a apărut o soluție simplă și ieftină.

Pe lângă metodele de accelerare a programelor descrise mai sus, mai există una care este ideală pentru segmentul de 5 - 15 utilizatori și anume accesul web pentru 1C în modul fișier.

Soluția patru. Acces web pentru 1C în modul fișier

Principiul de funcționare este următorul: un rol suplimentar al unui server web este instalat pe computer, pe care este publicată securitatea informațiilor.

Desigur, acesta ar trebui să fie fie cel mai puternic computer din rețea, fie o mașină separată dedicată acestui rol. După aceea, puteți lucra cu 1C în modul server web. Toate operațiunile grele vor fi efectuate pe partea de server, iar traficul transmis prin rețea va fi minimizat, la fel și încărcarea pe computerul clientului.

Astfel, chiar și mașinile foarte slabe pot fi folosite pentru a lucra în 1C și debitului rețeaua nu mai devine critică. Testele noastre au arătat că puteți lucra confortabil Internet mobil pe o tabletă ieftină, fără a experimenta vreun disconfort.

Această opțiune este inferioară serverului enterprise 1C în ceea ce privește viteza de operare, dar această diferență este practic invizibilă până la 15-20 de utilizatori. Apropo, pentru a implementa un server web puteți folosi IIS (pentru Windows) și Apache (pentru Linux) și ambele aceste soluții sunt gratuite!

În ciuda avantajelor evidente, aceasta metoda optimizarea funcționării 1C nu a câștigat prea multă popularitate.

Nu pot spune sigur, dar cel mai probabil acest lucru se datorează a două motive:

  • O descriere destul de slabă în documentația tehnică
  • Situat la intersecția responsabilității administrator de sistemși programator 1C

De obicei, atunci când un administrator de sistem este abordat cu o problemă de viteză redusă, acesta sugerează modernizarea infrastructurii sau a unui server terminal dacă este contactat un specialist 1C, i se oferă un server enterprise 1C; Deci, dacă în compania dumneavoastră, un specialist responsabil cu infrastructură și un specialist responsabil cu 1C lucrează „mână în mână”, atunci puteți utiliza în siguranță o soluție bazată pe un server web.

Să grăbim 1C. De la distanță, rapid și fără participarea dvs

Știm cum să accelerăm 1Ski fără a deranja clientul. Ne adâncim în problemă, ne facem treaba și plecăm. Dacă doriți ca programul să funcționeze normal, contactați-ne. O să ne dăm seama.

Lăsați o solicitare și primiți o consultație gratuită cu privire la accelerarea programului.




Top