Acasă / Securitate / Care server pentru 1s 83. C: Contabilitate pe un server separat

Care server pentru 1s 83. C: Contabilitate pe un server separat

Până în prezent, produsul financiar 1C a crescut de la o aplicație de contabilitate pentru contabilitate într-un complex de format larg pentru contabilitate și susține aproape orice tip de afaceri, pretinzând că concurează cu „monstrii” lumii SAP R/3 și Microsoft Dynamics AX (Axapta). ).

Companiile rusești își organizează din ce în ce mai mult procesele de afaceri folosind configurații moderne 1C 8.3 „Managementul comerțului”, „Managementul producției”, „Managementul întreprinderii ERP”și altele asemenea. Departamentele de contabilitate, marketing, producție, vânzări sunt transferate la 1C, se realizează integrarea cu telefonia IP și sistemele de management al documentelor. Cu toate acestea, imediat după intențiile „să lucrăm în 1C”, apar întrebări - despre ce resurse va funcționa baza centrală a 1C, ce hardware va arăta cel mai bun rezultat pentru un buget rezonabil? Este mai ușor pentru întreprinderile gigant din sectorul public în această situație - o comandă clară a fost dată numeroșilor integratori și arhitecți IT cu normă întreagă, mecanismele pentru licitații cu buget mare au început să se învârtească cu condiția obligatorie de a oferi un concept la cheie și sprijin suplimentar. a sistemului de către specialiști autorizați. Dar cum rămâne cu companiile care doresc să cumpere și să instaleze unul dintre produsele 1C: Enterprise, cheltuindu-și bugetul cu înțelepciune?

Cea mai de bază greșeală, dacă nu țineți cont de utilizarea de software piratat sau neverificat, este economisirea hardware-ului pentru 1C. Aceste tendințe sunt frecvente în special în startup-uri și companii mici. Există o părere că nu este necesar să cumpărați echipamente de server scumpe cu procesoare Intel Xeon, nu este necesar să precalculați cantitatea de RAM, încărcarea CPU și a subsistemului de disc, că nu este nevoie să creați redundant. matrice de discuri (Raid), utilizați controlere de disc profesionale cu Cache-RAM și etc. Erorile în calculele arhitecturii IT pentru 1C duc la consecințe triste, despre care compania află deja la oprirea proceselor de afaceri. Prin urmare, este foarte important să acordați atenție fiecărui nod hardware al platformei de server pentru 1C.

Exemple de probleme tipice datorate construcției incorecte a unei arhitecturi IT pentru 1C:
  • „Frânarea” interfețelor de bază și 1C din cauza supraîncărcării resurselor cheie (de obicei RAM sau subsistem de disc).
  • Erori și „crashuri” ale programului 1C din cauza instabilității echipamentului selectat incorect.
  • Timp de nefuncționare a companiei din cauza defecțiunii centralei hardware.
  • Pierderea parțială sau completă a datelor 1C din cauza defecțiunilor hardware sau software aleatoare.

Resurse hardware ale serverului 1C

Să luăm în considerare mai jos cele mai cheie resurse hardware, greșeala de a alege care poate strica întregul proiect de automatizare a întreprinderii atunci când creați singur un server sub 1C.

Unitate centrală de procesare (CPU)

Numărul de nuclee fizice ale procesorului. Subiectul disputelor eterne pe diferite forumuri 1C este ceea ce este mai important decât frecvența CPU sau multi-core. Rădăcinile acestor contradicții se întorc în trecut, la 1C 8.0 sau chiar la 1C 7.7. Într-adevăr, procesele executabile 1C sunt mai multe versiuni timpurii au fost pur cu un singur nucleu, adică indiferent câte nuclee furnizează procesorul central - serviciul de server pentru întreprinderi 1C 8.0 sau „clientul gros 1C 7.7” au ocupat întotdeauna doar un nucleu „zero” în sistem de operare. Astăzi, imaginea s-a schimbat - sistemul de operare distribuie cu îndrăzneală sarcinile unui proces 1C: Enterprise (rphost) pe mai multe nuclee CPU (vezi Figura 1).




Figura 1 - Sarcina procesorului în timpul funcționării proceselor serverului 1C.


Dar asta nu înseamnă deloc că dacă cumpărați un procesor cu numărul maxim de nuclee, atunci un server 1C asociat cu un DBMS (cel mai adesea DBMS înseamnă MS SQL) va arăta performanțe fantastice și rescrierea perioadelor contabile în programul 1C va fi o chestiune de câteva minute. Este necesar să înțelegem diferența dintre viteza de efectuare a unei singure operații și procesul de procesare a unei cantități mari de informații simultan. Numărul de nuclee fizice vă permite doar să rezolvați problema stabilității și performanței lucrului simultan cu multe sarcini diferite de către 1C: server Enterprise și DBMS. De aici concluzia - cu cât este mai mare numărul de utilizatori 1C, cu atât numărul potrivit de nuclee va juca un rol pentru funcționarea confortabilă simultană a acelorași utilizatori. Dependența numărului de utilizatori de numărul de nuclee pentru serverul 1C este prezentată în Tabelul 1.


Numărul de utilizatori concurenți pe serverul 1C:Enterprise Tipul și modelul procesorului Numărul de nuclee utilizate
Până la 10 utilizatori Intel Core personalizat de la 3,1 Ghz Nu mai mult de 2-4
Până la 20 de utilizatori Server Intel Xeon de la 2,4 Ghz 4 la 6
Până la 30 de utilizatori Server Intel Xeon de la 2,6 Ghz 6 până la 8 nuclee
Până la 50 de utilizatori Server Intel Xeon de la 2.4 Ghz - în cantitate de 2 buc De la 4 pe procesor

Tabelul 1 - Raportul dintre numărul de utilizatori de pe serverul 1C și numărul recomandat de nuclee CPU.


frecvența procesorului. Spre deosebire de numărul de nuclee - frecvența procesorului central afectează exact viteza de procesare a unei piese dintr-o sarcină la un moment dat, care este cel mai popular criteriu pentru utilizatorii finali 1C. Frecvența procesorului este exact parametrul, cu o creștere în care pentru un singur utilizator, viteza de procesare a cererilor de către serverul 1C și DBMS va crește și timpul în care sistemul va furniza rezultatul final utilizatorului final. va scadea. În sprijinul acestui lucru, cunoscutul specialist Gilev, într-unul dintre articolele sale bazate pe teste practice, a făcut o concluzie lipsită de ambiguitate - „viteza lui 1C este mult mai influențată de frecvența procesorului central decât de ceilalți parametri ai acestuia, indiferent dacă este fie clientul final 1C sau serverul 1C: Enterprise”. Aceasta este arhitectura programului 1C.

Cache, virtualizare și hyper threading.În trecut, când procesoarele multi-core nu erau încă atât de comune, Intel a inventat tehnologie specială procesorul central, simulând multi-core, așa-numitul „hyper-threading”. Odată activat, un procesor fizic (un nucleu fizic) este definit de sistemul de operare ca două procesoare separate (două nuclee logice). Vă recomandăm să dezactivați „hyperthreading” pentru serverul 1C. Această tehnologie nu aduce nicio accelerație de 1C.

Folosind mașini virtuale pentru serverul 1C:Enterprise și DBMS, trebuie luat în considerare faptul că nucleele mașinilor virtuale sunt „mai slabe” decât nucleele fizice reale, deși se numesc la fel - „nuclee”. Nu există coeficienți oficiali exacti, dar articolele de pe portalurile tehnice Microsoft recomandă numărarea a 4-6 nuclee de procesor într-o mașină virtuală per nucleu fizic.

Un cache este o memorie scratchpad utilizată de procesor pentru a reduce timpul mediu de acces la memoria computerului. De fapt, este o parte integrantă a procesorului, deoarece se află pe același cip cu acesta și face parte din blocurile funcționale. Totul este foarte clar aici - cu cât memoria cache este mai mare, cu atât „bucăți” de informații mai mari le poate procesa procesorul. De obicei, dimensiunea memoriei cache depinde de modelele de procesor - cu cât modelul este mai scump, cu atât mai multă memorie cache acolo. Cu toate acestea, nu credem că dimensiunea memoriei cache a procesorului afectează drastic performanța serverului 1C și a DBMS. Mai degrabă, aparține domeniului „ajustării fine”.

Tip procesor. Toată lumea știe că hardware-ul este împărțit în server și utilizator. Este posibil în unele cazuri să utilizați un procesor personalizat ieftin ca alternativă la un procesor de server profesional, dar scump? Se pare - este posibil. Luați în considerare un tabel care compară parametrii principali ai două opțiuni pentru centrală procesoare Intel(vezi tabelul 2).

Procesor personalizat Intel® Core™ i7-6700T (8M Cache, până la 3,60 GHz) Server Procesor Intel® Xeon® E5-2680 v2 (25 M Cache, 2,80 GHz)
Cache 8MB 25 MB
Frecvență magistrala de sistem 8 GT/s DMI3 8 GT/s QPI
Set de comenzi SSE4.1/4.2 pe 64 de biți, AVX 2.0 AVX 2.0 pe 64 de biți
Numărul de nuclee 4 10
Ceasul de bază al procesorului 2,8 GHz 2,8 GHz
Max. volum și tip memorie cu acces aleator 64 GB non-ECC 768 GB ECC
Cost estimat 354$ 1 280$

Tabelul 2 - Comparația parametrilor principali ai procesorului de acasă și ai serverului de la Intel.


După cum putem vedea, procesorul serverului are valori mult mai mari în numărul de nuclee, dimensiunea cache-ului, suport pentru mai multă RAM și, desigur, la un preț mai mare. Cu toate acestea, CPU-ul serverului practic nu diferă de CPU-ul utilizatorului în ceea ce privește suportul pentru anumite instrucțiuni (instrucțiuni) procesorului și frecvența de ceas. Din aceasta se poate concluziona că pt organizatii mici Este destul de acceptabil să utilizați un procesor personalizat pentru serverul 1C:Enterprise. Singura problemă este că un procesor de utilizator nu poate fi instalat într-un soclu de server. placa de bazași suportă RAM de server cu verificarea parității (ECC), iar utilizarea componentelor personalizate implică riscuri pentru stabilitatea întregului sistem în ansamblu.

Memorie cu acces aleatoriu (RAM)

tip RAM. Bara de RAM (RAM) diferă prin scopul său - pentru sisteme de server multi-utilizator sau pentru dispozitive personale - PC-uri, laptopuri, netop-uri, thin clients etc. Ca și în cazul procesorului - parametrii principali ai modulelor RAM sunt aproximativ echivalenti - RAM PC-ului modern practic nu rămâne în urma RAM-ului serverului nici în volumul unei bare, nici în frecvența ceasului, nici în tipul de DDR module. Diferențele dintre RAM de server și RAM „de acasă” în cazurile de utilizare și scopul platformei hardware - aici se formează și costul său mai mare:

  • RAM de server are paritate ECC (Error Correction Code) - o tehnică de codificare/decodare care vă permite să corectați erorile în procesarea informațiilor direct de către modulul RAM
  • Placa de bază a serverului are mult mai multe sloturi pentru instalarea modulelor RAM decât un PC obișnuit
  • RAM-ul serverului conține registre (buffere) care furnizează buffering de date (registrat parțial sau tamponat complet complet), reducând astfel încărcarea controlerului de memorie cu multe solicitări simultane. „FB-DIMM-urile” tamponate sunt incompatibile cu cele fără tampon.
  • Module memorie de înregistrare de asemenea, vă permit să creșteți scalabilitatea memoriei - prezența registrelor face posibilă instalarea mai multor module într-un singur canal.

Putem concluziona că utilizarea modulelor RAM de server face posibilă instalarea unor cantități mari de RAM într-un singur sistem, iar tehnicile de control al parității ECC și utilizarea bufferelor permit sistemului de operare al serverului să funcționeze stabil și rapid.

Cantitatea de RAM. Unul dintre factorii cheie pentru performanta ridicata serverul 1C și DBMS reprezintă o cantitate suficientă de RAM. Desigur, cerințele reale ale RAM depind de mulți factori - tipul de configurație 1C, numărul de procese 1C: Enterprise server, dimensiunea bazei de date DBMS și așa mai departe. Cu toate acestea, este posibil să se obțină o dependență aproximativă a cantității de RAM de numărul de utilizatori (vezi Tabelul 3).


Cerința RAM pentru serverul 1c și DBMS Până la 10 utilizatori Până la 20 de utilizatori Până la 30 de utilizatori Până la 50 de utilizatori
Server 1c: Enterprise 4-6 GB 6-8 GB 12-14 GB 18-24 GB
MS SQL Server 4-6 GB 8-10 GB 16-18 GB 24-28 GB

Tabelul 3 - Raportul aproximativ al numărului de utilizatori ai serverului 1C și RAM recomandată pentru procesele 1C: server Enterprise și server MS SQL.


În ceea ce privește procesele serverului 1C: Enterprise (rphost.exe) - platformele moderne 1C nu permit mod manual indicați numărul de procese de server 1C. În schimb, sistemul vă cere să setați parametri precum numărul baze de informareși numărul de utilizatori per proces rphost.exe, după care determină automat numărul optim de procese server 1C:Enterprise. De asemenea, puteți configura eliberarea lină a memoriei RAM prin procesul rphost.exe dacă volumul acesteia depășește un prag predeterminat. În același timp, serverul 1C creează un nou proces rphost.exe, care preia treptat sarcinile 1C, permițându-vă să descărcați procesul 1C necesar.

De asemenea, trebuie să rețineți că cantitatea de RAM alocată serviciului SQL este considerată suficientă dacă accesarea datelor SQL din cache este de cel puțin 90%. Această măsurătoare este destul de utilă deoarece nu poți să te uiți doar la cantitatea de RAM consumată de serverul SQL - cele mai recente versiuni ale SQL au consumat RAM dinamic - cantitatea maximă posibilă de RAM este capturată și eliberată pe măsură ce RAM este solicitată de alte procese.

Frecvența RAM. Pe scurt, asta este debitului canale prin care datele sunt transmise către placa de bază, iar de acolo către procesor. Este de dorit ca acest parametru să coincidă cu frecvența admisă a plăcii de bază sau să o depășească, altfel canalul de transmisie RAM riscă să devină un blocaj. Într-un tip de DDR, creșterea / scăderea frecvenței nu afectează drastic performanța serverului 1C și este mai mult legată de zona de „ajustare fină”.

Timpurile RAM. Aceasta este întârzierea sau latența (Latency) a memoriei RAM. Acest parametru este caracterizat de timpul de întârziere a datelor în timpul tranziției între diferite module ale cipului RAM. Valorile mai mici înseamnă performanță mai rapidă. Cu toate acestea, impactul asupra performanței generale a sistemului de server și cu atât mai mult asupra serverului 1C:Enterprise nu este mare. De obicei, doar jucătorii și overclockerii acordă atenție acestor parametri, pentru care fiecare scădere suplimentară de performanță este cel mai scump lucru.

Subsistem de disc și HDD pentru hard disk

controlere de hard disk. Dispozitivul principal pentru conectarea și organizarea hard disk-urilor într-un sistem hardware este controlerul hard diskului. Este de doua feluri:

1. Încorporat - modulul controlerului este încorporat în sistem, carcasa hard diskului este conectată direct la placa de bază. Este considerată o soluție mai economică.

2. Extern - este un separat placă de circuit imprimat(dispozitiv) care se conectează la conectorul plăcii de bază. Este considerată o soluție mai profesională datorită faptului că are cipuri separate pentru efectuarea și controlul operațiunilor cu hard HDD-uri. Recomandat pentru sisteme server importante, cum ar fi 1C: Server Enterprise și DBMS.

Există, de asemenea, un al treilea tip - un dispozitiv pentru recepția/transmiterea datelor bloc prin canale iSCSI, FiberChanel, InfiniBand, SAS. Cu toate acestea, în această versiune, subsistemul disc este „eliminat” la dispozitiv separat stocare de date (SHD), conectat la server printr-un cablu optic sau de cupru. În articolul nostru, analizăm cerințele pentru un server autonom pentru 1C, așa că nu vom lua în considerare acest tip.

Tipuri și niveluri de matrice RAID. Este o tehnologie de virtualizare a datelor care combină mai multe unități într-o unitate logică pentru redundanță și performanță. Luați în considerare cele mai populare niveluri de specificație RAID:

  • RAID 0 („Striping”) Nu are redundanță și distribuie informațiile simultan pe toate discurile incluse în matrice sub formă de blocuri mici ("stripe"). Acest lucru îmbunătățește considerabil performanța, dar suferă de fiabilitate. Nu vă recomandăm să utilizați acest tip de matrice, în ciuda câștigului de performanță.
  • RAID 1 („Oglindire”, „oglindă”). Are protecție împotriva defecțiunii a jumătate din hardware-ul disponibil (în cazul general, unul dintre cele două hard disk), oferă o viteză de scriere acceptabilă și un câștig în viteza de citire datorită paralelizării interogărilor. Acest tip de matrice va „trage” destul de mult un server 1C + DBMS până la 25-30 de utilizatori, mai ales dacă sunt folosite discuri SAS 15K sau SSD.
  • RAID 10. Perechile de discuri în oglindă se aliniază într-un „lanț”, astfel încât volumul volumului rezultat poate depăși capacitatea unui hard disk. În opinia noastră, cel mai de succes tip de matrice de discuri, deoarece combină fiabilitatea RAID1 și viteza RAID 0. În combinație cu unități SAS 15K sau SSD, poate fi folosit pentru servere 1C de la 40-50 de utilizatori.
  • RAID 5. Cunoscut pentru economia sa. Sacrificând de dragul redundanței capacitatea unui singur disc din matrice, obținem protecție împotriva defecțiunii oricăreia dintre hard disk-urile din sistem. (varianta sa RAID 6 necesită încă două hard disk-uri pentru a găzdui sumele de verificare, dar păstrează datele chiar dacă două discuri eșuează). Acest tip de matrice este economic, fiabil și are o viteză de „citire” destul de tangibilă. Din păcate, blocajul acestei matrice este viteza scăzută de scriere, ceea ce îi permite să fie utilizat confortabil cu configurații de server 1C de până la 15-20 de utilizatori. De asemenea, este optim pentru scopuri aplicate - stocarea datelor de fișiere, arhive de gestionare a documentelor etc.

Tipuri de interfețe pentru hard disk.În funcție de tipul de conexiune, hard disk-urile sunt împărțite:

  • HDD Sata Acasă. Cea mai ieftină opțiune pentru hard disk, concepută pentru a fi utilizată în computerele de acasă sau în centrele media de rețea. Nu este recomandat să folosiți astfel de dispozitive pe serverele 1s din cauza toleranței scăzute la erori și a stabilității funcționării - componentele acestor discuri pur și simplu nu sunt proiectate să funcționeze 24/7 și eșuează rapid.
  • Server HDD Sata. Acest nume se referă de obicei la hard disk-uri cu o interfață Sata și o viteză a axului de 7.200 rpm. Prefixul „Server” înseamnă că astfel de unități au fost testate pentru performanță în sistemele server și sunt proiectate pentru muncă stabilăîn modul 24/7. Utilizat de obicei în serverele 1C pentru a stoca cantități mari de informații care nu necesită viteză mare de procesare. De exemplu - baze de date de arhivă 1c, schimb de foldere, încărcare fișiere documente de birou etc.
  • Server HDD SAS. Diferențele dintre interfața SAS (analogicul modern al SCSI) și Interfață Sata niste. Aici, timpul mediu de răspuns al discului și lucrează într-un raft comun de discuri și lucrează cu controlerul HDD la rate mai mari de schimb de informații - până la 6 Gb / s (comparativ cu Sata 3 Gb / s). Dar principalul avantaj este existența modelelor de discuri SAS cu o viteză a axului de 15.000 rpm. Acesta este caracteristica de proiectare permite discurilor SAS să realizeze de aproape 3 ori mai multe IOPS în comparație cu HDD-ul Sata Server. Astfel de discuri SAS sunt de dimensiuni mici și sunt recomandate pentru utilizare cu bazele de date principale 1c cu o sarcină de lucru constant ridicată.
  • Unități SSD. Aceste unități diferă de cele anterioare nu în interfața de conectare, ci în designul lor - sunt în stare solidă și nu au părți mobile, de exemplu. în esență, sunt analogi ale „unităților flash”. Astfel de tehnologii permit SSD-urilor să producă un număr „respectiv” de operațiuni I/O pe secundă (de la 10.000 de operațiuni pe cele mai simple modele SSD). Cu toate acestea, acest avantaj are și un dezavantaj - prețul mai mare al SSD-urilor și „pragul de viață” al acestora, care depinde de limita numărului de scrieri pe blocurile SSD. Cu toate acestea, în fiecare an, aceste discuri devin din ce în ce mai accesibile și mai durabile. Deoarece costul discurilor SSD crește de multe ori în funcție de volum, cel mai rezonabil ar fi să le folosiți pentru baze de date 1c mici, dar super-încărcate, care necesită viteză mare de acces, precum și pentru bazele de date temporare TempDB.

IOPS este numărul de operațiuni I/O pe secundă. De fapt, IOPS este numărul de blocuri de informații care pot fi citite sau scrise pe media într-o secundă de timp. Adică, în forma sa cea mai pură - acesta este parametrul cheie al vitezei de procesare a informațiilor de către hard disk, care afectează performanța serverului 1C. Dacă luăm pentru comparație un bloc standard de informații 4kb, atunci putem distinge aproximativ următorii indicatori IOPS (vezi Tabelul 4).


HDD IOPS Interfață
Unități SATA de 7.200 rpm ~75-100 IOPS SATA 3Gb/s
Unități SATA de 10.000 rpm ~125-150 IOPS SATA 3Gb/s
Unități SAS de 10.000 rpm ~140 IOPS SAS
Unități SAS de 15.000 rpm ~175-210 IOPS SAS
Unități SSD De la 8.000 IOPS SAS sau SATA

Tabelul 4 - Indicatori IOPS pe diferite tipuri de hard disk atunci când lucrați cu un bloc de date de 4 kb.


Desigur, în forma sa pură, IOPS este de puțin folos pentru calcularea calculelor și cerințelor finale pentru subsistemul de disc al serverului 1C. La urma urmei, performanța totală a subsistemului de disc constă din tipul de matrice RAID, tipuri de disc și indicatori ai vitezei interfeței sale, timpul de răspuns (latență), timpul de acces aleatoriu, procentul de operațiuni de citire și scriere și multe alti factori. Cu toate acestea, acest parametru, în opinia noastră, este un indicator cheie al vitezei subsistemului de disc și, în etapele de dezvoltare a unei arhitecturi de server, ajută la determinarea ce tip de hard disk va fi în general cel mai potrivit pentru anumite nevoi. (vezi calculatorul RAID)

test de practică

Care este relația dintre numărul de utilizatori 1C și numărul de iops? Echipa noastră a efectuat un test practic (vezi Tabelul 5) pentru a măsura încărcarea subsistemului de disc o anumită sumă sesiunile 1C. Deoarece sistemul 1C este un mediu programabil și fiecare companie poate avea propriul set de procese de afaceri în 1C, trebuia să fim legați de o anumită configurație de referință pentru testare. În această calitate, a fost aleasă o configurație specializată a TsUP 1C, dezvoltată pentru testare și depanare. Pe baza acestuia, programatorii noștri 1C au adăugat o serie de interogări care simulează funcționarea normală a unei întreprinderi convenționale, cu formarea de interogări contabile, înregistrări, raportare și efectuare a documentelor operaționale.


Disc de sistem Discul bazei de date
Repetare Utilizatori Scriere IOPS Citire IOPS Scriere IOPS Citire IOPS
Medii
1 12 9,1 0,1 13,1 1,5
2 20 7,9 0,1 21,8 0,4
3 32 5,2 0,006 36,1 5,2
4 40 7,7 0,013 27,52 1,3
5 52 7,7 0,006 32,04 0,94

Tabelul 5 - Rezultatele unui test practic asupra încărcării subsistemului de disc.


Rezultatele testului arată că partea leului din încărcarea subsistemului de disc are loc atunci când 1C este scris în baza de date a serverului DBMS și pe discul de sistem al sistemului de operare (care, implicit, conține fișierele 1C:Enterprise). server cache).

În același timp, am efectuat măsurători practice ale bazelor de date 1C UPP 8.2 care funcționează deja în perioada de testare - 5 zile lucrătoare. Ei arată că, în medie, un server 1C + DBMS consumă de două ori mai mulți iops „pentru scriere” decât „pentru citire”. O astfel de diferență între testele sintetice și statisticile de monitorizare ale unui server 1C real se datorează atât eșantionării periodice a datelor din baza de date în timpul zilei de lucru, cât și citirii regulate a bazei de date în timpul zilei de lucru. backup sau replicare DBMS.

Alte componente ale hard disk-ului, cărora merită să le acordați atenție.

  • Dimensiunea fizică (factor de formă). Până în prezent, aproape toate unitățile cunoscute pentru calculatoare personale iar serverele au o dimensiune de 3,5 sau 2,5 inchi. Rețineți că unitățile de 2,5 inchi nu sunt produse în volume mari.
  • Timp de acces aleatoriu- timp pentru care HDD garantat pentru a efectua o operație de citire-scriere pe o anumită zonă a discului magnetic. De regulă, mai mult rezultate ridicate au discuri de server. E de ajuns parametru important la construirea unei matrice de discuri pentru serverul DBMS 1C.
  • Viteza axului- numărul de rotații ale axului hard diskului pe minut. Totul este simplu și clar aici - timpul de acces și rata medie de transfer de date a hard disk-ului depind de viteza de rotație a axului cu plăci magnetice.
  • Capacitatea tamponului de hard disk- Un buffer este o memorie temporară concepută pentru a netezi diferențele de viteză de citire/scriere a unui hard disk și transferul de date prin interfață.
  • Fiabilitate- este definit ca timp mediu între defecțiuni (MTBF). De regulă, fiabilitatea depinde direct de producător, preț și mediul de utilizare al hard disk-ului. Considerăm că fiabilitatea este un parametru important al hard diskului care afectează calitatea serverului 1C.

Alegerea potrivită: hardware de acasă sau server

Reducerea componentelor hardware și creșterea activă a capacităților potențiale ale „calculatoarelor de acasă” duc la o altă concepție greșită fatală - întreprinderile mici folosesc în mod activ stațiile de lucru ca platformă de colaborare cu bazele de date 1C. În același timp, fără a realiza că, pe lângă parametrii frecvenței de bază, cantitatea de memorie și posibilitatea de a utiliza SSD-uri bugetare într-un PC obișnuit, există cerințe mai sistemice, mai profunde și mai importante pentru funcționarea hardware-ului în o structură comercială (vezi Tabelul 6).

Pentru a rezolva problema organizării unui server 1C, oferim închiriere de servere cloud 1C în centre de date de clasa Tier III. Fezabilitatea economică a alegerii unui server de închiriere o găsiți în articol.


Parametrii Server Calculator personal
Suficiența puterii de calcul V V
Operabilitate garantată a sistemului în modul 24/7 V X
Fiabilitatea și stabilitatea componentelor hardware cheie V X
Oportunitate telecomandă putere și consolă (IPMI) V X
Costul bugetar al platformei hardware X V

Tabelul 6 - Comparația hardware-ului de acasă și a serverului în funcție de criteriile necesare pentru funcționarea de înaltă calitate a serverului 1C.

Lucru tolerant la erori 1C

Desigur, una dintre cerințele importante pentru partea de server a 1C este stabilitatea funcționării sale și rezistența la defecțiuni. Microsoft și 1C însuși au făcut multe eforturi în această direcție, creând tehnologii pentru gruparea serviciilor lor la un nivel destul de serios (vezi Tabelul 7).


Toleranța la erori a serverelor SQL Bazat pe conceptul unui singur depozit de date partajat. Tehnologia de clustering SQL Server încorporată combină două servere SQL într-un singur cluster cu o singură adresă IP virtuală și o singură bază de date. Astfel, atunci când SQL-ul principal eșuează, interogările sunt transferate automat în backup.
A doua opțiune este recent apărută AlwaysOn, o tehnologie pentru replicarea automată regulată a bazelor de date DBMS între serverele SQL primare și de rezervă. În același timp, serverul SQL duplicat este localizat fizic pe un alt spațiu de stocare, ceea ce crește rezistența la riscuri
Server de serviciu de failover 1C:Enterprise Serverele 1C Enterprise sunt combinate într-un cluster de failover software activ-activ cu failover automat și salvarea sesiunilor curente.

Tabelul 7 - Toleranța la erori a serverelor SQL și 1C.


Cu toate acestea, fiecare tehnologie are atât avantaje, cât și dezavantaje. Pe lângă avantajele cheie, trebuie să cunoașteți câteva caracteristici ale clusterării 1C și SQL () pentru a nu ajunge la o deteriorare a performanței serviciului:

  • Clusteringul SQL utilizează IP virtual.Și asta înseamnă că interacțiunea dintre serverul 1C: Enterprise și MS SQL va avea loc întotdeauna în funcție de interfata retea, chiar dacă ambele servicii sunt pe același sistem de operare. Ceea ce, în consecință, va încetini activitatea lui 1C în comparație cu versiunea clasică a arhitecturii recomandate de 1C însuși - utilizarea memoriei partajate. În principiu, acest obstacol poate fi „ocolit” folosind, de exemplu, tehnologia MS SQL Log Shipping. Cu toate acestea, în acest caz, trecerea la un server SQL de rezervă nu va mai fi automată și această opțiune nu poate fi considerată un cluster cu drepturi depline.
  • Un cluster SQL necesită un buget mare. Dacă vorbim de clustering clasic al serviciului MS SQL, este necesară o singură stocare a bazei de date, conectată la serverele SQL principale și de rezervă. De obicei, acest rol este jucat de sistemele de stocare scumpe, ceea ce mărește bugetul cu un ordin de mărime. Dacă vorbim despre noul AlwaysOn, atunci nu este necesară o singură stocare a bazei de date, tehnologia funcționează cu unități locale servere primare și de rezervă prin rețea. Dar aveți nevoie de o versiune de SQL Server Enterprise, a cărei licență costă de 4 ori mai mult decât pentru un SQL Server Standard obișnuit.
  • Numărul de licențe.În ciuda faptului că al doilea server SQL nu prelucrează date și este în rezervă, vor trebui achiziționate licențe pentru ambele servere - atât cel principal, cât și cel de rezervă. Deosebit de dureros pentru buget sunt licențele SQL Server Enterprise pentru a implementa un cluster distribuit de grupuri de înaltă disponibilitate AlwaysOn.
  • Nu trebuie să utilizați hardware personalizat ieftin pentru ceva la fel de important ca un sistem de contabilitate la nivel de întreprindere. Preț în acest caz determină direct calitatea, stabilitatea și durabilitatea unei astfel de platforme.
  • Atunci când alegeți o platformă de server, vă recomandăm să acordați atenție prezenței a două surse de alimentare, a unei plăci IPMI la distanță și a mărcii producătorului. Desigur, fiecare alege o soluție în funcție de buget, mărcile de top sunt uneori prea scumpe și nu sunt în totalitate adecvate, dar nu ar trebui să economisiți deloc pe producător, acest lucru poate duce la forță majoră incontrolabilă în lucrul cu 1C. Noi folosim personal platformele de server Supermicro în combinație cu procesoarele de server Intel.
  • Există o opinie, confirmată de practică, că performanța lui 1C depinde mai mult de frecvența mai mare a procesorului decât de numărul de nuclee furnizate.
  • Nu este nevoie să economisiți cantitatea de RAM alocată pentru serverul 1C și serviciul SQL. RAM activată acest moment este o resursă destul de ieftină, iar lipsa acesteia (chiar și cu 10-15 la sută) va duce la o scădere puternică a performanței sistemului 1C, deoarece va fi activat un sistem de schimb mai lent. În plus, schimbul va da o încărcare suplimentară subsistemului de disc, ceea ce va înrăutăți și mai mult situația.
  • Compania EFSOL oferă servicii cuprinzătoare pentru selectarea unui server 1C, care include: proiectare, achiziție, configurare și întreținere server 1C.
  • O alternativă la crearea propriului server 1C este să închiriați un server pentru 1C. Tehnologiile cloud permit, la costuri lunare reduse, să obțineți un serviciu fiabil, tolerant la erori, pentru o muncă confortabilă în 1C.

Integrarea sistemului. Consultanta

Atunci când alegeți ce server este necesar pentru 1C, trebuie amintit că, în timp ce utilizatorii lucrează cu acesta, vor fi efectuate multe operațiuni de citire și scriere a datelor pe secundă.

Cel mai probabil, este imediat clar de ce proiectarea competentă a serverului pentru 1C este atât de importantă - dacă „hardware-ul” a fost inițial ales incorect și nu corespunde încărcării sistemului, atunci există riscul ca sau chiar să funcționeze intermitent, acele date importante. va fi pierdut. Pe de altă parte, creați un server sub 1C, cumpărați tot hardware-ul și software poate costa o sumă importantă pentru companie, de aceea este indicat să selectați echipamentele în așa fel încât să se evite costurile inutile.

Selectarea serverului pentru 1C

Când specialiștii noștri trebuie să facă o alegere de configurare pentru serverul 1C, primul lucru pe care îl întreabă este câți utilizatori vor lucra cu 1C în companie și ce set de servicii intenționează să folosească, care vor fi, cine va administra 1C. servere și cum. Pornim de la aceste informații atunci când creăm un server 1C.

Cerințe pentru serverul 1C

În structura hardware a serverului 1C, caracteristicile procesorului, RAM, subsistemul discului și interfețele de rețea vor fi importante pentru noi.

Este necesar ca acestea să asigure funcționarea stabilă și suficient de productivă a următoarelor componente:

  • sistem de operare;
  • server de baze de date (cel mai adesea este);
  • Partea server 1C (nu pentru toate cazurile, deoarece o companie mică cu 2-10 utilizatori poate lucra cu 1C în modul fișier);
  • lucrul utilizatorului în modul Desktop la distanță;
  • munca utilizatorilor de la distanță prin client slab sau client web.

Alegerea unui procesor pentru un server 1C

Numărul optim de nuclee de procesor este de obicei calculat pe baza faptului că trebuie să rezervați 1-2 nuclee pentru funcționarea sistemului de operare, 1-2 nuclee pentru funcționarea bazei de date SQL, încă 1 pentru funcționarea serverului de aplicații , și aproximativ 1 nucleu pentru fiecare 8-10 sesiuni de utilizator simultane (pentru ca utilizatorii să nu se plângă mai târziu că serverul 1C încetinește).

Vă rugăm să rețineți că viteza de procesare a interogărilor depinde nu atât de numărul de nuclee, ci de frecvența de ceas a procesorului, iar numărul de nuclee afectează mai mult stabilitatea muncii cu un număr mare de utilizatori și sarcini simultane de la aceștia.

De câtă memorie are nevoie un server 1C

În plus față de cele de mai sus, dacă aveți nevoie de un server 1C pentru 100 sau mai mulți utilizatori, vă recomandăm să implementați un cluster de cel puțin două servere fizice 1C.

Ne propunem să calculăm cantitatea de RAM necesară pe baza următorilor indicatori:

  • 2 GB vor fi necesari pentru funcționarea sistemului de operare
  • cel puțin 2 GB pentru cache-ul MS SQL Server și este mai bine ca această valoare să fie de 20-30% din volumul real al bazei de date - acest lucru va asigura o experiență confortabilă pentru utilizator cu aceasta
  • 1 - 4 GB pentru serverul de aplicații 1C
  • 100 - 250 MB vor necesita o sesiune de terminal de utilizator, în funcție de setul de funcții al serverului 1C, de configurația utilizată

Iată calculele noastre aproximative ale parametrilor serverului 1C 8.3:

Este mai bine să achiziționați RAM cu o marjă - acesta este unul dintre cei mai importanți factori în performanța ridicată a unui server 1C și, în același timp, este acum una dintre cele mai ieftine componente. Dacă nu există suficientă memorie pe serverul 1C Enterprise, acest lucru va fi foarte vizibil în timpul funcționării, prin urmare, atunci când vine vorba de întrebarea ce server 1C să alegeți, acordați întotdeauna atenție să vă asigurați că are suficientă memorie RAM.

Server 1C: echipament pentru subsistemul disc

Atunci când alegeți ce server este necesar pentru 1C, trebuie amintit că, în timp ce utilizatorii lucrează cu acesta, vor fi efectuate multe operațiuni de citire și scriere a datelor pe secundă. Acest parametru - cu ce viteză hard disk-ul vă permite să procesați date - este, de asemenea, una dintre cheia vitezei serverului 1C.

Când proiectați un server 1C, vă recomandăm să respectați următoarele cerințe pentru echipamentul subsistemului de disc:

  • Nu contează ce server creați pentru 1C, în niciun caz nu vă recomandăm să folosiți discuri unice în servere - este indicat să le organizați în matrice RAID (RAID 10 pentru baze de date mari sau RAID 1 pentru baze de date mici), unde tabelele de baze de date. va fi localizat.
  • Vă recomandăm să mutați fișierele index pe un SSD separat pentru un acces mai rapid la ele
  • TempDB - pe 1-2 (RAID 1) SSD-uri.
  • Plasați sistemul de operare și datele utilizatorului pe RAID 1 al SSD/HDD-ului.
  • Pentru fișierele jurnal, alocați un disc logic separat din matrice sau un disc SSD fizic.
  • Dacă este posibil, utilizați controler hardware- am văzut situații în care un server puternic și scump a încetinit din cauza performanței insuficiente a controlerului.

Selectarea serverului pentru 1C

În acest articol, am oferit câteva sfaturi și calcule aproximative despre cum să alegeți un server pentru 1C, sperăm că vă vor fi utile.

În concluzie, să mai adăugăm un lucru - nu ar trebui să încercați să economisiți bani utilizând un computer de utilizator pentru un server 1C (cum se face adesea în companiile mici) - hardware-ul utilizatorului este mult mai puțin fiabil și tolerant la erori decât hardware-ul serverului similar. performanţă. Nu merită să riști sistemul contabil al întreprinderii tale. Dacă achiziționarea hardware-ului potrivit este în afara bugetului dvs., poate doriți să luați în considerare implementarea 1C în cloud.

Dacă vă este greu să vă dați seama ce server să alegeți pentru 1C Enterprise 8.3, cum să faceți un server 1C, pentru că nu ați mai întâlnit această sarcină înainte, puteți oricând să contactați o companie de integrare de sisteme, astfel încât specialiști tehnici cu experiență să vă ajute proiectați, cumpărați, instalați și configurați un server potrivit pentru 1C.

Pentru început, îmi propun să evidențiem câteva scenarii de lucru:

1.) Lucrul cu baza de fișiere printr-o resursă partajată (server web)

2.) Lucrul cu baza de fișiere în terminal

3.) Lucrul cu baza de date server (MSSQL).

Lucrul cu baza de fișiere printr-o resursă partajată (server web)


Totul este destul de simplu aici. Dacă aceasta forme regulateși 1-3 utilizatori. Apoi, pe „server” (mașina pe care se va afla baza, selectați:

  • șuruburi rapide- atentie la turatia axului (luam 7200rpm). De exemplu, nu luăm seria verde de la WD, luăm negru sau roșu. Vezi seria Seagate's Constellation.
  • Procesor- nucleele nu sunt la fel de importante ca frecvența lor. 1C folosește destul de slab multi-core (deloc), așa că nu veți obține niciun beneficiu de la un procesor cu 8 nuclee, un procesor cu 2 nuclee cu o frecvență mai mare o va face. De exemplu, core i3 4360 - aceasta este în prezent frecvența maximă pentru intel (4ghz în modul turbo).
  • RAM - ea nu va juca un rol. Având în vedere modul în care aplicațiile moderne devorează memoria, pune 8GB
  • reţea- ei bine, de fapt, nu prea veți beneficia de o rețea de 1 Gbit, dar totuși, dacă o pereche torsadată cu 8 fire este întinsă (vă puteți uita în conectori), atunci are sens să puneți un switch gigabit, în același timp partajarea fișierelor de timp va fi mai rapidă.
    Iar atingerea finală în acest scenariu - nu este nevoie să găzduiți baza de date undeva pe o mașină separată - operațiunile de lungă durată vor fi efectuate mult mai rapid local decât prin rețea. Pune mașina asta la locul de muncă, de unde este planificat, de exemplu, închiderea lunii sau actualizarea securității informațiilor.

Un alt punct, dacă baza este pornită formulare gestionate. Aici, dacă totul se face așa cum este descris mai sus, veți primi frâne. Cu toate acestea, există o cale de ieșire:

  • SSD*în loc de șurubul obișnuit ne va salva. Luați o unitate de 120 GB, deoarece chiar și ținând cont de creșterea cursului de schimb, acestea sunt acceptabile. Recomand să fiți atenți la seria Intel 520/530, Kingston v300. Mai bine, citește doar recenziile la cele mai recente modele, pentru că. această piață se dezvoltă destul de rapid și intră pe piață noi produse
    *Notă: dacă veți combina discuri într-un RAID cu oglindire, de exemplu, RAID1. În acest caz, există un astfel de moment: majoritatea Unități SSD trim este necesar pentru a curăța gunoiul (în principal pentru modele destul de vechi), comanda poate să nu fie acceptată în modul raid și unitatea se va degrada în viteză pe măsură ce funcționează. Pentru a evita această problemă, puteți utiliza cel puțin două metode: în mod ideal, achiziționați un SSD la nivel de întreprindere, de exemplu, Intel DC3500. Dacă vi se pare scump, puteți folosi un pachet: placa de bază cu chipset
  • Procesor- similar cu paragraful anterior. Cu cât frecvența este mai mare, cu atât mai bine.
  • RAM - mare ea nu va juca un rol. Având în vedere modul în care aplicațiile moderne devorează memoria, pune 8GB

Dacă 1 utilizator lucrează local cu baza de date, atunci acest lucru este suficient pentru munca lui confortabilă, dar viteza de lucru în rețea printr-o resursă partajată va fi totuși lentă. Dar aici există o cale de ieșire - lucrați printr-un server web. Pe Internet, puteți găsi un număr mare de articole care descriu cum să organizați munca cu 1C într-un mod similar, nu mă voi opri asupra acestui lucru în acest articol. Singurul lucru pe care îl voi împărtăși cu voi este observația mea: este de preferat să setați lucrul pentru utilizatori nu printr-un browser web, ci printr-un client subțire (când adăugăm o nouă bază de date la lista IS, există un element „pe serverul web” pe pagina de plasare IS). Acest lucru, conform observațiilor mele, este mai rapid decât prin browser. În plus, atunci când se lucrează printr-un browser, există erori în interfață (PM deplasat etc.), care nu sunt prezente atunci când se lucrează printr-un client subțire.

De fapt, folosind această rețetă (ssd, procesor cu frecvență înaltă, server web, client subțire). Puteți risipi mitul „dacă numărul de utilizatori este mai mare de 1 (conform unei versiuni, mai mult de 0 :)) - aveți nevoie de o bază de server *.

*Deși, desigur, cu condiția ca acesta să nu fie un SCP sau o bază de date > ~ 4 GB în dimensiune, iar numărul de utilizatori nu depășește 4 (acestea sunt dimensiunile maxime ale bazei de date și numărul de utilizatori pe care i-am văzut, poate cineva a întâlnit cazuri când printr-un server web cu mai mulți oameni a lucrat cu baza de fișiere? Scrieți în comentarii)

Lucrul cu baza de fișiere în terminal

Să trecem la următoarea opțiune. Avem un server terminal și o bază de fișiere. Aici totul este similar cu scenariul 1, cu excepția procesorului:

  • unitate SSDîn loc de un șurub obișnuit.*
    *Notă: asigurați-vă că asamblați discurile într-un RAID cu oglindire, de exemplu, RAID1. În acest caz, există un astfel de punct: majoritatea unităților SSD necesită tăiere pentru a curăța gunoiul (în principal pentru modele destul de vechi), în modul raid este posibil ca comanda să nu fie acceptată și unitatea se va degrada în viteză pe măsură ce funcționează. Pentru a evita această problemă, puteți utiliza cel puțin două metode: în mod ideal, achiziționați un SSD la nivel de întreprindere, de exemplu, Intel DC3500. Dacă acest lucru pare costisitor, puteți utiliza un SSD de clasă personalizată, dar apoi asigurați-vă că capacitatea sa de rescriere este suficientă pentru scenariul dvs.
  • Procesor- Aici are sens să luăm corei5 în loc de i3, pentru că 1C va funcționa pe terminal, 2 nuclee suplimentare nu vor interfera, dar nu uitați de frecvență.
  • RAM există o expresie atât de stabilă printre admini: nu există niciodată multă memorie). Din practica mea, 7 persoane, când lucrează în BP3, ocupă 8-12GB pe terminal (depinde de câte documente sunt deschise pentru fiecare utilizator). Pentru formele obișnuite, cantitatea de memorie poate fi împărțită la 2 :). Un calcul aproximativ se poate face după cum urmează: 256 MB pentru sesiunea terminală în sine + 1,5 GB pentru 1C

Lucrul cu baza de date server (MSSQL).


Acest scenariu este cel mai complex și, poate, necesită un articol separat. Îmi propun în acest articol să luăm în considerare doar principiile de bază care afectează performanța

  • Plasarea serverului SQL și a serverului 1C. Pe diferite mașini sau pe una. Există un astfel de moment: dacă sunt pe aceeași mașină, atunci comunicarea între ei are loc prin protocolul de memorie partajată, iar în acest caz obținem un bonus de performanță, care nu există atunci când sunt pe mașini diferite.
  • PROCESOR.Și aici este deja util și mare viteză de ceas și multi-core. pentru că avem un proces SQL server, dacă este pe aceeași mașină, și mai multe procese server 1C rphost care vor încărca nucleele procesorului.Separat, vreau să evidențiez sistemele cu dublu procesor (adică când există două socluri pe placa de bază pentru și mai multe prize). Chiar dacă luați cu o priză goală „în rezervă, cumpărați un procesor mai târziu, dacă aveți nevoie brusc de el”. Am văzut un număr mare de servere cu două socluri care, până la sfârșitul vieții, au rămas cu un al doilea soclu gol. Deși, dacă firma plătește... de ce să-ți refuzi plăcerea :)
  • RAM. În activitatea sa, SQL Server * folosește în mod activ RAM, dacă nu este suficientă, va urca pe discuri, care, chiar și în cazul ssd-ului, sunt mai lente decât RAM. Prin urmare, nu merită să economisiți memorie aici. Budget cât mai mult (nu uitați, bineînțeles, de bunul simț :)), și lăsați sloturi libere pe placa de bază, astfel încât să puteți livra oricând o bară suplimentară.
    *Notă: nu uitați să limitați RAM maximă utilizată de serverul SQL, astfel încât să fie suficientă pentru sesiunile de OS și terminal și, de asemenea, să creșteți pașii de creștere a tmp și a bazei de date SQL (pasul implicit este 1mb, ceea ce este foarte mic, set 200 MB pentru bază și 50 MB pentru jurnal)
  • subsistem de disc. Poate apărea gândul că, dacă cantitatea de RAM este mai mare decât dimensiunea bazei, atunci totul va sta în memorie și totul va zbura. S-ar putea să fi fost... înainte de prima operație de scriere :) care va scrie pe discuri. Și aici te vor rupe hard disk-urile :) Folosește unități SSD. Și aici, nu mai economisiți pe SSD-uri non-desktop, obțineți SSD-uri normale la nivel de întreprindere. Intel DC3700 -200GB resursă 3,7 petaocteți (10 suprascrieri ale volumului total al unității pe zi timp de 5 ani), poate fi găsit pentru 24000r/buc + secundă pentru RAID1=48000. Licența va dura mult mai mult.

Arata ca asta e. Dacă întrebări/reclamații/sugestii - bine ați venit în comentarii;)

1C:Enterprise 8 poate fi o aplicație consumatoare de resurse chiar și cu un număr mic de utilizatori. Alegând un server pentru 1C, orice proprietar ar dori să evite „rănirile la naștere” - potențiale blocaje încorporate în acesta. Pe de altă parte, astăzi puțini cumpără servere cu capacitate în exces, „pentru creștere”. Este bine dacă profilul de încărcare poate fi eliminat în prealabil - atunci este mai ușor să proiectați un server pentru o anumită configurație a aplicațiilor companiei.

Pentru certitudine, să luăm în considerare platforma „1C:Enterprise 8.2” în configurațiile sale de bază populare „Contabilitate”, „Comerț și depozit”, „Gestionarea salariilor și a resurselor umane”, „Managementul unei întreprinderi comerciale” și, parțial, „Producție”. Managementul întreprinderii”. Pornim de la faptul că pentru întreprinderile cu 10 sau mai mulți angajați care lucrează în 1C, „1C: Enterprise 8.2. Server de aplicații”. Să luăm în considerare opțiunea de a lucra în modul Desktop la distanță, cu numărul de utilizatori simultani ai bazei de date de până la 100-150. Recomandările se vor aplica și pentru DB 1C mai „grele”, dar „cazurile severe” necesită întotdeauna o abordare individuală.

Procesoare și RAM

Dacă compania este foarte mică (2-7 utilizatori în sistem), baza de date este mică (până la 1GB), iar 1C:Enterprise 8.2 funcționează în modul fișier pe computerul utilizatorului, atunci obținem o implementare clasică de server de fișiere. Chiar și Intel Core i3, în special Intel Xeon E3-12xx, poate face față unei astfel de sarcini în ceea ce privește încărcarea procesorului. Cantitatea de RAM necesară este destul de simplă: 2 GB pentru sistemul de operare și 2 GB pentru memoria cache a fișierelor de sistem.

Dacă compania are 5-25 utilizatori 1C, dimensiunea bazei de date este de până la 4GB, atunci aplicația 1C:Enterprise 8.2 ar trebui să aibă suficient Intel Xeon E3-12xx cu 4 nuclee sau AMD Opteron 4xxx. Pe lângă 2 GB de RAM pentru sistemul de operare, este necesar să se aloce 1-4 GB pentru 1C:Enterprise 8.2. Application Server” și aceeași cantitate pentru MS SQL Server ca cache - un total de 8-12 GB RAM. Pentru bazele de date mici, este de dorit să păstrați în cache cel puțin 30% din baza de date în RAM și, de preferință, toate 100%.

Fapt cunoscut (deși nu este deosebit de promovat): „1C: Enterprise 8.2. Application Server nu-i place foarte mult când sistemul de operare îl descarcă într-un fișier swap de pe hard disk și tinde să piardă uneori răspunsul. Prin urmare, pe serverul pe care rulează „Serverul de aplicații”, ar trebui să existe întotdeauna o rezervă de spațiu liber în RAM - mai ales că astăzi este ieftin.

În companiile mai mari, utilizatorii 1C lucrează de obicei prin acces de la distanță la aplicație (Remote Desktop) - adică în modul terminal. De regulă, cu 10-100 de utilizatori 1C cu o bază de date de 1 GB sau mai mult, „1C:Enterprise 8.2. Application Server” și aplicația utilizator „1C:Enterprise 8.2” rulează pe același server.

Pentru a determina resursele necesare procesorului, se presupune că un nucleu fizic poate procesa eficient nu mai mult de 8 fire de execuție - acest lucru se datorează arhitecturii interne a procesoarelor. După cum arată practica, pentru sarcinile 1C + Remote Desktop, nu ar trebui să luați procesoare server de linii inferioare cu frecvențe joase de nuclee de calcul și o arhitectură trunchiată. Dacă sunt puțini utilizatori (până la 15-20), un procesor Intel Xeon E3-12xx de înaltă frecvență va fi suficient. În același timp, cel puțin unul dintre nucleul său fizic (2 fire) va merge la nevoile SQL Server, încă unul (2 fire) - la 1C:Enterprise 8.2. Application Server", și restul de 2 nuclee fizice (4 fire) - pentru utilizatorii OS și terminale. Cu mai mult de 20 de utilizatori 1C sau mai mult de 4 GB de volume de baze de date, este timpul să treceți la sisteme cu 2 procesoare pe Intel Xeon E5-26xx sau AMD Opteron 62xx.

Calculul cantității necesare de RAM este relativ simplu: 2 GB trebuie să fie dați sistemului de operare, 2 GB sau mai mult - MS SQL Server ca cache (cel puțin 30% din baza de date), 1-4 GB - sub „1C: Enterprise 8.2 . Application Server”, restul memoriei serverului ar trebui să fie suficient pentru sesiunile terminale. Un utilizator de terminal, în funcție de configurație, consumă în aplicațiile „Contabilitate”, „Comerț și Depozit” - 100-120MB, „Gestionarea salariilor și a personalului”, „Managementul întreprinderii comerciale” - 120-160MB, „Managementul Întreprindere de producție" - 180-240MB. Dacă utilizatorul lansează suplimentar MS Word, MS Excel, MS Outlook pe server, atunci ar trebui să fie alocați încă 100 MB pentru fiecare aplicație. De regulă, minimul pentru un server terminal este de 12 GB RAM.

De exemplu, pentru un server 1C cu întregul pachet software, 50 de utilizatori de terminale în configurația Trading Enterprise Management și o bază de date de 8 GB, puterea de calcul a două procesoare Intel Xeon E5-2650 (8 nuclee, 16 fire, 2,0 GHz) va fi optim. RAM va avea nevoie de cel puțin 2 (OS) + 4 (SQL) + 4 (1C-server) + 8 (160 „UTP” * 50 de utilizatori) = 18 GB și, de preferință, 24-32 GB (6-8 canale DIMM de 4 GB fiecare) .

Subsistemul disc

Cele mai multe reclamații cu privire la funcționarea lentă a serverelor 1C:Enterprise 8 se datorează unei neînțelegeri a ce tipuri de operațiuni I/O sunt efectuate pe acestea, pe ce date și cu ce intensitate. Adesea, subsistemul de disc este cheia pentru a asigura performanța suficientă a serverului în ansamblu - la urma urmei, pentru bazele de date încărcate, cea mai mare problemă este blocarea tabelelor atunci când mulți utilizatori lucrează cu ele simultan sau în timpul descărcărilor/încărcărilor/postărilor în bloc. Monitorizarea si optimizarea subsistemului disc al serverului.

1C are 5 fluxuri de date pentru subsistemul de disc cu care funcționează:

  • tabele baze de date;
  • fișiere index;
  • fișiere temporare tempDB;
  • fișier jurnal SQL;
  • fișierul jurnal al aplicațiilor utilizator 1C.

Structura de date din 1C este orientată pe obiecte, cu multe obiecte și relații între ele. Pentru a lucra cu tabele de date, numărul de operațiuni de citire și scriere pe care subsistemul disc le poate efectua într-o perioadă de timp (Input Output Operation per Second, IOPS) este extrem de important. În același timp, capacitatea sa de a oferi o rată mare de transmitere a datelor (în MBp/s) este mult mai puțin importantă. O bază foarte modestă de 200-300MB cu 3-5 utilizatori poate genera până la 400-600 IOPS în vârfuri. O bază de date pentru 10-15 utilizatori și un volum de 400-800MB este capabilă să furnizeze 1500-2500 IOPS, 40-50 utilizatori ai unei baze de date de 2-4GB generează 5000-7500 IOPS, iar bazele de date pentru 80-100 de utilizatori ajung cu ușurință la 12000- 18000 IOPS.

Desigur, sarcina medie a subsistemului de disc poate fi de 10-15% din vârf. Doar în realitate, performanța în perioada de vârf este cea care este importantă: descărcări automate de date din alte sisteme, schimb de date al unui sistem distribuit sau o reluare a perioadei.

Unitățile moderne în operațiuni de citire și scriere cu acces aleatoriu (Random Read / Write) fac față singure unor astfel de sarcini:

Intel 910 400 GB

2400 - 8600 IOPS

Se vede clar ca:

  • blocajul atât pentru HDD, cât și pentru SSD este scrierea;
  • HDD-urile tradiționale nu sunt concurente ale SSD-urilor în ceea ce privește viteza de citire în IOPS, chiar și teoretic, diferența depășește două ordine de mărime;
  • chiar și nici cel mai modern SSD desktop este de 3-40 de ori (în funcție de configurație) mai rapid decât orice HDD în ceea ce privește viteza de scriere în IOPS, server SSD este de 12-40 de ori mai rapid decât HDD;
  • performanța maximă în IOPS este asigurată de PCIe SSD clasa Intel 910 sau LSI WarpDrive.

Discurile individuale nu sunt folosite în serverele de baze de date, ci doar matrice RAID. Pentru a calcula în continuare performanța reală a subsistemului de disc, trebuie să țineți cont de costurile („penalizare”) pentru scrierea în IOPS, care sunt suportate de grupul de discuri în RAID:

Dacă colectați 6 discuri în RAID 10, atunci pentru fiecare înregistrare de 1 IOPS de date vor fi cheltuite 2 IOPS de discuri fizice, iar dacă în RAID 6, atunci 6 IOPS de discuri. Astfel, atunci când calculați capacitatea de încărcare de scriere a unui grup de discuri, trebuie mai întâi să adăugați IOPS-urile tuturor discurilor din grupul RAID și apoi să le împărțiți la „penalizare”.

Exemplul 1: 2 HDD-uri SATA 7200 în RAID 1 vor furniza scriere: (100 IOPS *2) / 2 = 100 IOPS.

Exemplul 2: 4 SATA 7200 în RAID 5 vor oferi: (100 IOPS *4) / 4 = 100 IOPS per scriere.

Exemplul 3: 4 SATA 7200 în RAID 10 vor oferi: (100 IOPS *4) / 2 = 200 IOPS per scriere.

Exemplele 2 și 3 arată de ce RAID 10 este preferat pentru stocarea bazelor de date care au o distribuție tipică de citire/scriere 68/32.

Din aceste trei tabele, este clar de ce performanța unui „set gentleman’s set” tipic 2 HDD SATA 7200 în RAID 1 nu este suficientă pentru un server: la sarcini de vârf, coada de accesări la disc crește, utilizatorii așteaptă un răspuns de la sistem, uneori pentru multe ore.

Cum să creșteți performanța de scriere a subsistemului de disc? Creșteți numărul de discuri dintr-un grup RAID, treceți la discuri cu o viteză de rotație mai mare, selectați un nivel RAID cu o penalizare de scriere mai mică. Memorarea în cache de către un controler RAID cu modul Write back activat ajută foarte mult. Datele sunt scrise nu direct pe discuri (ca în modul Write Through), ci în memoria cache a controlerului și abia apoi, în modul lot și într-o formă ordonată, pe discuri. În funcție de specificul sarcinii, performanța de scriere poate fi crescută cu 30-100%.

În bazele de date puțin încărcate sau relativ mici (până la 20 GB), este potrivită o modalitate ieftină de a „extrage IOPS” - RAID hibrid de pe SSD / HDD. Mai mult și nu aveți nevoie de o bază de date de sucursale pentru 3-15 utilizatori într-o structură distribuită, cum ar fi o rețea de cafenele sau benzinării.

Pentru bazele de date mari (200 GB sau mai mult) cu un istoric lung de date sau pentru deservirea mai multor baze de date mari, stocarea în cache SSD (tehnologiile LSI CacheCade 2.0 sau Adaptec MaxCache 3.0) poate fi eficientă. Conform experienței de operare a unor astfel de sisteme, în sarcinile 1C acestea pot fi folosite relativ ieftin și fără modificări semnificative în infrastructura de stocare pentru a accelera operațiunile de disc cu 20-50%.

Campionul în ceea ce privește performanța în IOPS este, în mod previzibil, matricele RAID de pe SSD-uri de server - atât tradiționale, folosind un controler RAID SAS, cât și SSD-uri PCIe. Popularitatea lor este împiedicată de două limitări: tehnologice (performanța controlerelor RAID sau nevoia de a sparge radical structura de stocare) și prețul de vânzare.

Separat, ar trebui spus despre stocarea fișierelor index și TempDB. Fișierele index sunt actualizate foarte rar (de obicei o dată pe zi), dar sunt citite foarte, foarte des (IOPS). Astfel de date trebuie pur și simplu stocate pe un SSD, cu ratele lor de citire! TempDB folosit pentru stocarea datelor temporare este de obicei de dimensiuni reduse (1-4-12 GB), dar foarte solicitant la viteza de scriere. Fișierele index și temporare au în comun faptul că pierderea lor nu duce la pierderea datelor reale. Aceasta înseamnă că pot fi plasate pe un SSD separat (și mai bine - pe două volume separate). Cel puțin pe controlerul SATA de la bord al plăcii de bază. Din punct de vedere al fiabilității și performanței, sub TempDB este de dorit să se dea o oglindă (RAID1) de la SSD, este posibilă pe controlerul de bord, dar cu oprirea obligatorie a tuturor cache-urilor de scriere. SSD-urile pentru desktop pot face față, de asemenea, acestui rol - cum ar fi seria Intel 520, unde compresia hardware a datelor atunci când scrieți în TempDB va fi corectă. Îndepărtarea acestor sarcini dintr-un sistem de stocare partajat într-un subsistem dedicat de mare viteză are un efect pozitiv asupra performanței sistemului în ansamblu, în special în perioadele de încărcare maximă.

În cazurile în care este posibil să se asigure cel mai rapid răspuns posibil al administratorilor în caz de defecțiuni, și când există sarcini complexe de calcul (logistica de depozit sau transport, producție în SCP, schimburi de volum în URDB), TempDB este transferat la RAMDrive. Această soluție vă permite să câștigați uneori până la 4-12% din performanța generală a sistemului. Unele inconveniente apar numai dacă serverul este repornit: dacă RAMDrive nu pornește automat, va fi necesară intervenția administratorului pentru a porni manual - altfel întregul sistem va deveni.

O altă componentă importantă sunt fișierele jurnal. Au o caracteristică neplăcută pentru orice subsistem de disc - generează un flux aproape constant de accesări mici de scriere. Acest lucru este imperceptibil la sarcini medii, dar degradează foarte mult performanța serverului 1C la sarcini de vârf. Este logic să mutați fișierul jurnal (în special, fișierul jurnal SQL) într-un volum fizic separat care nu are cerințe ridicate de IOPS și care va fi scris aproape liniar. Pentru liniște sufletească, puteți crea o oglindă din SATA / NL SAS ieftin și voluminos (pentru jurnal complet) sau SSD-uri desktop ieftine din aceeași serie Intel 520 (jurnal simplu sau jurnal complet, cu backup și curățare zilnică).

În general, putem spune că sosirea SSD-urilor în servere a deschis noi oportunități pentru creșterea performanței serverelor de masă - datorită stocării de date pe niveluri și configurației rezonabile I/O pe disc.

Subsistemul de disc al „serverului ideal sub 1C” arată astfel:

1. Tabelele bazelor de date sunt găzduite pe RAID 10 (sau RAID 1 pentru baze de date mici) de SSD-uri de server de încredere cu un controler RAID hardware obligatoriu. Pentru cerințe ridicate de IOPS, luați în considerare o opțiune SSD PCIe. Pentru bazele de date mari, stocarea în cache SSD a matricelor HDD este eficientă. Dacă configurația 1C utilizată și structura datelor nu sunt prea solicitante pentru IOPS, iar numărul de utilizatori este mic, va fi suficientă o matrice tradițională de HDD SAS 15K rpm.

2. Fișierele index sunt mutate pe un singur SSD rapid și ieftin, TempDB - la 1-2 (RAID 1) SSD sau RAMDrive.

3. Un volum dedicat (un singur disc fizic sau RAID-1) pe un HDD SATA/NL SAS sau SSD ieftin sau un disc logic pe o matrice RAID care conține sistemul de operare al serverului și fișierele/folderele utilizatorului.

4. Sistemul de operare și datele utilizatorului sunt stocate pe RAID 1 al HDD sau SSD.

Dacă infrastructura IT este virtualizată, este foarte de dorit ca SQL Server să fie instalat nu ca o mașină virtuală, ci direct pe un server fizic, pe bare metal. Prețul problemei este de la 15 la 35% din performanța subsistemului de disc (în funcție de hardware, drivere, instrumente de virtualizare și metode de conectare la volum). Într-un mediu de server SQL virtualizat, conectarea volumelor cu tabele de baze de date, fișiere index și TempDB la o VM este obligatorie în modul exclusiv prin Acces Direct.

Interfețe de rețea

La construirea sistemelor 1C:Enterprise 8 pentru întreprinderi mici și mijlocii (până la 100-150 de utilizatori activi în același timp), pierderile în operațiunile de rețea prin interfața Ethernet ar trebui reduse la minimum. În mod ideal, serviți atât SQL Server, cât și „1C: Enterprise 8 Application Server x64”, și sesiuni de utilizator 1C în Remote Desktop cu un singur server fizic. Controversată în ceea ce privește toleranța la erori, această recomandare vă permite să profitați la maximum de hardware și software, iar prin utilizarea virtualizării oferă un anumit nivel de securitate și „repetabilitate a mediului” pe alte echipamente.

De ce să excludem Ethernet din lanțul serverului SQL -> 1C:Serverul de aplicații Enterprise 8 -> sesiunea utilizator 1C:Enterprise 8? Interfața de rețea Ethernet, cu împachetarea datelor în blocuri relativ mici pentru transmisie, va crea întotdeauna întârzieri suplimentare: atât la împachetarea / despachetarea traficului, cât și în timpul transmisiei în sine (latență mare). În 1C:Enterprise 8, matrice de date destul de mari sunt transferate pentru procesare și afișare de-a lungul întregului lanț, în unele situații - în ambele direcții. La transferul de date direct de la un proces la altul în RAM-ul serverului (pe același server fără virtualizare) sau printr-o interfață de rețea virtuală (în cadrul aceluiași server fizic, cu adaptoare de rețea de server bune cu transfer de blocuri RAM între VM) întârzieri sunt mult mai mici. Serverele moderne cu dublu procesor cu RAM mare și un subsistem de disc pe SSD vă permit să serviți confortabil o bază de date 1C pentru 100-150 de utilizatori activi.

Dacă utilizarea mai multor gazde fizice este inevitabilă pentru bazele de date încărcate, este de dorit să conectați toate serverele prin Ethernet de 10 Gb. Sau cel puțin 2-4 conexiuni Ethernet de 1 Gb agregate cu accelerare hardware TCP/IP (TCP/IP Offloader) și suport pentru virtualizare hardware.

Cel mai mult, soluțiile bugetare suferă de pierderi de performanță pe porturile Ethernet. Nu este un secret pentru nimeni că adaptoarele de rețea de 1 Gb, lipite pe majoritatea plăcilor de bază pentru servere, nu sunt proiectate pentru a gestiona trafic intens de rețea. Chiar dacă placa are 2 sau 3 porturi GbE, acestea sunt de obicei implementate pe cipuri desktop. Suficiente pentru management, ele generează costuri generale suplimentare pentru deservirea schimburilor de rețea, în special într-un mediu virtualizat. Întregul proces de transfer de date printr-un astfel de cip este asigurat de resursele procesorului, RAM și încărcarea magistralelor interne. Astfel de cipuri nu asigură nicio accelerare a transmisiei traficului IP, fiecare pachet Ethernet primit și transmis necesită o întrerupere separată pentru procesor. Într-un mediu virtualizat, pierderile de performanță ale interfeței de rețea pot ajunge la 25-30%. Cel mai neplăcut lucru este că interfața de rețea este supraîncărcată de instrumentele de monitorizare și este posibil să nu fie observată. Procesorul central este suflat pentru el, iar dacă nu funcționează, atunci este inactiv în așteptarea unui răspuns de la placa de rețea. Este de dorit să se excludă porturile de pe cipurile desktop din fluxul de date în mediile virtualizate, lăsându-le pentru sarcinile de gestionare a serverului. În condiții de trafic intens de rețea, merită să adăugați o placă de rețea discretă pe chipset-ul serverului.

Toleranță la erori sau timp de nefuncționare acceptabil?

Discuțiile despre performanța serverului sunt aproape întotdeauna însoțite de argumente despre fiabilitatea serverului. Toleranța la erori are întotdeauna un cost suplimentar, mai ales atunci când susțin procese de producție continue. Fără a minimaliza rolul și locul lui 1C, putem spune că majoritatea utilizatorilor săi rezolvă dilema „performanță/fiabilitate” în diferite planuri: luptă pentru primul cu optimizarea soluțiilor hardware, pentru al doilea - cu organizarea proceselor și proceduri. Când aplicațiile sunt moderat critice, menținerea sănătății se concentrează nu pe protecția individuală a serverului, ci pe minimizarea timpului de nefuncționare a infrastructurii în ansamblu.

Desigur, pentru întreprinderile cu un număr relativ mare de utilizatori conectați simultan (25-150) și care găzduiesc toate aplicațiile pe un singur server, este imperativ să se utilizeze surse de alimentare neîntreruptibile, surse de alimentare redundante pentru serverele în sine, coșuri de discuri cu schimb la cald. și matrice RAID de așteptare la cald. Dar niciun hardware nu poate înlocui backup-ul planificat al datelor în sine. Având o copie de rezervă zilnică (mai precis, noaptea) și un fișier online cu un jurnal SQL complet, puteți restaura complet baza de date 1C într-o perioadă relativ scurtă.

Timpul de nefuncționare admisibil al sistemului central 1C pentru întreprinderile mici și mijlocii este de 1-2 accidente pe lună, cu o durată de 1-4 ore. De fapt, aceasta este o marjă uriașă de timp - dacă sunteți pregătit pentru recuperare în avans. O condiție necesară pentru o repornire rapidă este disponibilitatea imaginilor tuturor serverelor virtuale și fizice sub forma unei VM pe un stoc / volum separat - pentru a restabili partea de infrastructură în sine pe un server de rezervă. Backup zilnic obligatoriu (precum săptămânal și la sfârșitul perioadei) pe alt dispozitiv fizic și jurnal Full SQL pentru cazurile în care pierderea datelor „de la începutul zilei de lucru” este critică și dificil de recuperat manual. Dacă aveți echipamente de schimb, puteți păstra în 1-2 ore pentru a restabili capacitatea de lucru în general, deși cu o productivitate mai scăzută. Ei bine, acolo unde este necesară continuitatea 24×7, prioritățile vor fi alegerea arhitecturii adecvate, a echipamentelor cu un număr minim de puncte de defecțiune și a tehnologiilor de clustering cu drepturi depline. Dar asta este o cu totul altă poveste.

Articol original: http://ko.com.ua/proektirovanie_servera_pod_1s_66779

Cu permisiunea editorului revistei „Computer Review”

Pentru a asigura eficacitatea programelor executate pe platforma Enterprise 8 este necesar nu numai cumpara 1C, dar și pentru a alege soluția de server potrivită.

În prezent implementarea 1C 8 realizat în mai multe versiuni. Cea mai populară soluție este un server de fișiere dedicat. Această opțiune include un PC dedicat sau un server mic, un sistem de operare pentru server instalat, precum și configurarea accesului partajat la un folder cu 1C: Enterprise. Această opțiune este destul de simplă și accesibilă, dar nu este capabilă să ofere performanță și fiabilitate ridicate.

Dacă o organizație trebuie să asigure fiabilitate și performanță ridicată, atunci, de regulă, ei aleg implementarea 1C 8 folosind un SGBD industrial - Microsoft SQL Server. În acest caz, Windows Server 2003 este utilizat ca sistem de operare, iar hardware-ul trebuie să îndeplinească cerințe ridicate.

Această soluție este mai scumpă, dar are propriile avantaje, cum ar fi performanța ridicată și toleranța la erori. Sistemul permite, de asemenea, backup eficient, oferă un nivel ridicat de protecție a datelor și elimină indexarea obligatorie în caz de defecțiuni.

Pentru ca sistemul să funcționeze corect, acesta trebuie implementat de către un calificat Programator 1C. Pentru că cei neexperimentați Programator 1C poate anula toate avantajele - un volum mare de baze de date cu o configurație de server de calitate scăzută reduce semnificativ performanța produsului 1C.

De asemenea, este de remarcat faptul că această opțiune de implementare desktop necesită licențe client pentru a se conecta la Windows Server 2003/2008. În cazul unor încărcări mari pe baza de informații 1C, performanța Windows SBS 2003/2008 poate fi insuficientă. În acest caz, este posibil să se aloce un server suplimentar, Microsoft SQL Server 2005/2007.

O altă metodă care este adesea folosită la implementarea 1C este un server terminal. Serviciul de conectare la terminal încorporat în Windows Server 2003 vă permite să obțineți o rezervă mare de performanță, capacitatea de a lucra în siguranță și pe deplin, precum și un nivel ridicat de protecție.

Lista de software pentru implementarea programelor 1C: Enterprise.

De regulă, următorul software este utilizat pentru implementarea programelor pe 1C: Platformă Enterprise: Windows 7, Vista, XP Professional, Windows Server 2003-2008, Windows Small business server.

Windows XP Professional a fost mult timp versiunea de bază a sistemului de operare și este instalat în multe organizații. Windows 7 este un sistem de operare destul de nou pentru computere personale care oferă performanțe ridicate prin integrarea rețelelor, tehnologiilor și sistemelor. Calculatoarele echipate cu sisteme de operare Windows Vista, XP Professional și 7 pot fi folosite ca servere entry-level. Aceste sisteme de operare suportă până la 10 conexiuni, dar viteza și securitatea lasă mult de dorit.

Windows Server 2003 sau 2008 sunt cele mai populare sisteme de operare pentru servere care vă permit să implementați soluții 1C:Enterprise , asigura fiabilitatea si usurinta intretinerii.

Windows Small Business Server 2008 este un produs software care constă dintr-un pachet întreg de produse server și componente suplimentare. Această opțiune este potrivită pentru companiile mici care nu plănuiesc sarcini serioase pe baza de informații 1C Enterprise. Principalul avantaj al Windows SBS 2008 este prețul scăzut.

Deci înainte cumpara 1C, trebuie să luați în considerare la ce sarcină va fi supusă baza de date și, în conformitate cu aceasta, să selectați tipul de server.

Lansarea a fost pregătită de magazinul de software licențiat 1cmarket.ru


Comentarii și recenzii

Surse din rețea au dezvăluit caracteristicile detaliate ale smartphone-ului Black Shark 2 Pro, care va fi oficial...

HTC și-a extins gama de smartphone-uri cu buget redus cu modelul Wildfire E, care are un preț de 9.000 de ruble...

LG a anunțat că televizoarele lor vor suporta tehnologiile Apple AirPlay 2 și HomeKit. Prin s...

Compania Phanteks a prezentat o soluție unică pentru asamblarea unui CBO personalizat cu o zi înainte. Nou Glacier D140 cu...