Kako podesiti pametne telefone i računare. Informativni portal
  • Dom
  • Vijesti
  • 1s dozvoljena količina memorije za radne procese. Rješavanje mogućih problema sa instalacijom

1s dozvoljena količina memorije za radne procese. Rješavanje mogućih problema sa instalacijom

Često na mašini rade i druge usluge zajedno sa serverom 1C:Enterprise - terminal server, SQL server itd. I u nekom trenutku 1C:Enterprise server, odnosno rphost radni proces, pojede više memorije nego što je planirano ili svu memoriju. Što dovodi do usporavanja ostalih servisa i zombija servera. Da biste izbjegli takve situacije, morate konfigurirati automatsko ponovno pokretanje tokova rada 1C:Enterprise servera

Rješenje

1. Otvorite administrativnu konzolu 1C Enterprise servera;
2. Proširite stablo centralnog servera na klastere i odaberite klaster koji nas zanima. U primjeru postoji samo jedan klaster;
3. Otvorite svojstva odabranog klastera i pogledajte sljedeći obrazac

Svojstva klastera servera 1C:Enterprise 8.3

Pogledajmo primjer prikazan na slici:

Interval ponovnog pokretanja— vrijeme nakon kojeg će rphost proces biti prisiljen ponovo pokrenuti. Prije nego što se proces završi, pokreće se novi rphost proces na koji se prenose sve veze, a tek tada će se stari proces prekinuti. Ovo ni na koji način neće uticati na korisničko iskustvo. Interval je prikazan u sekundama, u primjeru je naznačeno 24 sata.

Dozvoljena veličina memorije— količina memorije unutar koje tok posla može raditi bez problema. Volumen je naznačen u kilobajtima, u primjeru vrijednost je 20 gigabajta (u stvari, cifra je prevelika i morate krenuti od određenog sistema, ali prosječna cifra je 4 GB). Čim memorija koju zauzima radni proces premaši navedenu vrijednost, počinje odbrojavanje.

Interval za prekoračenje dozvoljene količine memorije— nakon što tajmer pokrenut nakon prekoračenja dozvoljene količine memorije odbrojava navedeno vrijeme, pokrenut će se novi radni proces na koji se prenose sve veze, stari proces je označen kao onemogućen. Interval je naveden u sekundama, u primjeru je naznačeno 30 sekundi.

Zaustavite onemogućene procese nakon— vrijeme nakon kojeg će radni tok označen kao onemogućen biti zaustavljen ako je vrijednost 0, proces neće biti dovršen. Interval je naveden u sekundama, u primjeru je naznačeno 60 sekundi.

Nakon primjene postavki, ne morate ponovo pokrenuti servis servera, oni se primjenjuju dinamički.

Ukupno

Na ovaj način postavljamo automatsko ponovno pokretanje radnih procesa 1C:Enterprise servera i dobijamo stabilniji sistem ako dođe do curenja memorije, rad određene sesije će biti prekinut.

Također, u nekim situacijama možete se igrati s postavkama i spriječiti mogući pad servera ako pogriješite.

Server 8.3 karakteriše novi redizajniran interni kod, iako se „izvana“ može činiti da se radi o malo modifikovanom 8.2.

Server je postao „automatski konfigurabilniji“ neki parametri, kao što je broj radnih procesa, više se ne kreiraju ručno, već se izračunavaju na osnovu opisa zahteva tolerancije grešaka i zadataka pouzdanosti.

Razvijen je mehanizam za balansiranje opterećenja, koji se može koristiti ili za povećanje performansi sistema u cjelini, ili za korištenje novog moda „uštede memorije“, koji vam omogućava da radite „sa ograničenom memorijom“ u slučajevima kada je konfiguracija koristi „voli da pojede memoriju“.

Stabilnost rada pri korištenju velikih količina memorije će biti određena novim parametrima proizvodnog servera.


Posebno je zanimljiv parametar “sigurna potrošnja memorije po pozivu”. Za one koji slabo znaju šta je to, bolje je da ne treniraju na "produktivnoj" osnovi. Parametar "Maksimalna veličina memorije radnih procesa" omogućava da se u slučaju "prelivanja" ne sruši cijeli radni proces, već samo jedna sesija "sa gubitnikom". “Količina memorije za radne procese do koje se server smatra produktivnim” omogućava vam da blokirate nove veze čim se ovaj prag memorije premaši.

Preporučujem izolaciju radnih procesa prema bazi podataka, na primjer, navođenjem parametra „Broj informacione sigurnosti po procesu = 1“. Sa nekoliko visoko opterećenih baza podataka, ovo će smanjiti međusobni uticaj iu smislu pouzdanosti i performansi.

Poseban doprinos stabilnosti sistema daje “trošak” licenci/ključeva. U 8.3, postalo je moguće koristiti „softverski licencni menadžer“, koji podsjeća na „aladin“ menadžer. Cilj je da se ključ može staviti na zasebnu mašinu.

Implementiran je kao još jedan “servis” u upravitelju klastera. Možete koristiti, na primjer, „besplatan“ laptop. Dodajte ga u klaster 1C 8.3, kreirajte zasebnog upravitelja na njemu s uslugom „usluga licenciranja“. Možete umetnuti hardverski hasp ključ u svoj laptop ili aktivirati softverske licence.

Od najvećeg interesa za programere bi trebalo da budu “Zahtjevi za dodjelu funkcionalnosti”.

Dakle, na laptopu sa sigurnosnim ključem, kako ne biste pokretali korisnike na serveru klastera, morate dodati "zahtjeve" za objekt zahtjeva "Klijentska veza za sigurnost informacija" - "Ne dodijeli", tj. spriječiti radne procese na ovom serveru da obrađuju klijentske veze.

Još zanimljivija je mogućnost pokretanja "samo pozadinskih poslova" na proizvodnom serveru klastera bez korisničkih sesija. Na ovaj način možete premjestiti visoko opterećene zadatke (kod) na zasebnu mašinu. Štaviše, možete pokrenuti jedan pozadinski zadatak “zatvaranja mjeseca” koristeći “Vrijednost dodatnog parametra” na jednom računaru, a pozadinski zadatak “Ažuriranje indeksa punog teksta” na drugom se javlja kroz indikaciju “Vrijednost dodatni parametar”. Na primjer, ako navedete BackgroundJob.CommonModule kao vrijednost, možete ograničiti rad poslužitelja radnika u klasteru samo na pozadinske poslove s bilo kojim sadržajem. Vrijednost BackgroundJob.CommonModule..- će ukazati na određeni kod.

Jasno je da nema smisla prepričavati dokumentaciju. Ali ako neko da neki koristan savjet, proširit ću članak.

Termini, koncepti

Zašto vam je potreban 1C server?

Izraz "klaster servera" odnosi se na nekoliko računara (servera) koji obavljaju zajednički zadatak.

Zadaci koje rješava klaster servera 1C:Enterprise 8 prikazani su na donjoj slici.

Razlika između 8.1 i 8.2

Klaster 1C 8.1

Klaster servera 1C:Enterprise 8.1 je implementacija ideje o raspodjeli opterećenja na serverima koji opslužuju zahtjeve klijenata. Ovaj mehanizam raspoređuje opterećenje računarskih resursa unutar jednog servera ili nekoliko servera (“Radni serveri”), čime se osigurava skaliranje aplikacije. Klaster servera duplira kod koji opslužuje klijentske veze. Duplikat izvršnog koda klastera se zove "Radni proces" (rphost). Prilikom instaliranja klastera kreira se samo jedan radni proces.
Nekoliko radnih procesa na jednom serveru omogućavaju efektivno korištenje količine RAM-a i procesorskih resursa za izvršavanje zahtjeva, kao i povezivanje klijentske sesije sa drugim radničkim procesom ako se trenutni „sruši“.
Program Server Agent (ragent) odgovoran je za razumijevanje onoga što se izvodi na određenom serveru. Zaustavljanje serverskog agenta učinit će server nedostupnim za korištenje od strane klastera. Agent pohranjuje svoje informacije u datoteci srvribrg.lst.
Podaci o radnim bazama podataka i uključenim radnim procesima su u vlasništvu “Server Managera” (rmngr). Pohranjuje ove informacije u datoteci 1CV8Reg.lst. Zaustavljanje upravitelja servera može dovesti do ponovnog pokretanja klijentskih aplikacija ako se upravitelj uspješno ponovo pokrene ili do potpunog zaustavljanja radnih servera cijelog klastera.
1C:Enterprise 8.1 omogućava stvaranje nekoliko nezavisnih klastera na jednom serveru. Svaki od njih je identificiran na mreži jedinstvenim “IP portom” i jedinstvenim brojem u servisnim datotekama. Prvi klaster podrazumevano prima port 1541.
Snap-in Enterprise Servers dizajniran je za upravljanje klasterom.
Možete se povezati sa serverima po imenu servera ili IP adresi.

Server agent

Serverski agent "zna" o svim klasterima koji se izvode na serveru. Ove informacije su pohranjene u datoteci svribrg.lst sa listom klastera i administratora liste. Glavni port agenta je 1540. Na svakom Radnom serveru može se pokrenuti samo jedan agent koji opslužuje sve moguće klastere na ovom serveru.
Da biste vizuelno dobili detaljnije informacije, koristite uslužni program Process Explorer (koji je razvio Sysinternals). Program vam omogućava da dublje pogledate unutar svih pokrenutih procesa, uključujući 1C:Enterprise 8.1 serverski klaster.

Cluster Manager

Za rad klastera odgovoran je menadžer klastera. Svaki klaster ima svog menadžera. Upravitelj pohranjuje informacije o klasteru u datoteci 1CV8Reg.lst (registrator klastera). Svaki Cluster Manager također ima svoj vlastiti port na Work Serveru. Za prvi klaster, podrazumevani port menadžera je 1541. Ovaj port je prikazan u dodatku 1C:Enterprise Servers u grani Klasteri, identifikujući klaster.
Menadžer prima zahtjeve od klijentskog dijela 1C:Enterprise 8.1 i donosi odluku kojem toku posla će dati zahtjev za uslugu.

Menadžer koristi servisni port za interakciju sa radničkim procesima.

Radni proces

Radni proces je odgovoran za „rad sa klijentima“. Možemo reći da je u prethodnoj verziji 1C:Enterprise 8.0 postojao samo jedan „Tok rada“.
U klasteru 1C:Enterprise 8.1 može postojati nekoliko radnih procesa. Upravitelj servera odlučuje koji će radni proces opsluživati ​​vezu klijenta. Za konekcije klijenata, radničkim procesima je po defaultu dodijeljen raspon IP portova 1560 – 1591. Dodatno, svakom radnom procesu je dodijeljen servisni port za komunikaciju s upraviteljem klastera. Svaki radni proces koristi do 2 Gb RAM-a u 32-bitnom operativnom sistemu. U 64-bitnom operativnom sistemu, ograničenje je nametnuto fizičkom količinom RAM-a

Klaster 1C 8.2

Serverski klaster 1C:Enterprise 8.2 – dalji razvoj serverskih 8.2 tehnologija.

Server može raditi “kao 8.1”, tj. ostaje kompatibilan sa prethodnim tehnologijama.

I plus, implementiran je novi pristup radu servera. Sada, umjesto procesa, važnu ulogu igraju sesije.

Sesije omogućavaju balansiranje opterećenja i toleranciju grešaka unutar upravljane aplikacije.

Cluster Manager

Upravitelj klastera je sada postao složeniji. Neke funkcije se sada mogu razdvojiti u poseban proces, pa čak i postaviti na drugi radni server u klasteru. Ovo vam omogućava da uravnotežite opterećenje servera.

Server 8.2 tolerancija grešaka se postiže kroz:

  • Pohranjivanje informacija o sesiji korisnika.
    • Korisnik više nije vezan za tok posla.
  • Rezervacija radnih procesa u klasteru.
    • Treba postojati nekoliko radnih procesa, uključujući i one suvišne
  • Klaster rezervacija.
    • Rezervni klaster je prikazan kada je povezan, oni su navedeni u liniji veze

Ovo omogućava kontinuitet rada:

Ako je fizička veza klijenta sa klasterom prekinuta (čistačica je izvukla kabl, isključeno je napajanje mrežne opreme, došlo je do problema sa provajderom), nema potrebe za ponovnim povezivanjem na infobazu i pokretanjem svih rad iznova. Nakon što se fizička veza uspostavi, korisnik može nastaviti s radom od mjesta gdje je prekinuta.

Ako je potrebno održavanje klaster računara, oni se mogu isključiti tokom rada bez zaustavljanja korisnika u radu sa informacijskom bazom.

Ako bilo koji server u klasteru pokvari, rad korisnika se neće zaustaviti; Za korisnike će takav prijelaz biti nevidljiv.

Ako jedan od radnih procesa klastera ne uspije, korisnici povezani na njega automatski će biti prebačeni na druge ili rezervne radne procese. Takav prijelaz će također biti nevidljiv korisnicima.

Klaster 1C 8.3

Server 8.3 karakteriše novi redizajniran interni kod, iako se „izvana“ može činiti da se radi o malo modifikovanom 8.2.

Server je postao „automatski konfigurabilniji“ neki parametri, kao što je broj radnih procesa, više se ne kreiraju ručno, već se izračunavaju na osnovu opisa zahteva tolerancije grešaka i zadataka pouzdanosti.

Razvijen je mehanizam za balansiranje opterećenja, koji se može koristiti ili za povećanje performansi sistema u cjelini, ili za korištenje novog moda „uštede memorije“, koji vam omogućava da radite „sa ograničenom memorijom“ u slučajevima kada je konfiguracija koristi „voli da pojede memoriju“.

Stabilnost rada pri korištenju velikih količina memorije će biti određena novim parametrima proizvodnog servera.

Posebno je zanimljiv parametar “sigurna potrošnja memorije po pozivu”. Za one koji slabo znaju šta je to, bolje je da ne treniraju na "produktivnoj" osnovi. Parametar “Maksimalna veličina memorije radnih procesa” omogućava, u slučaju “prelivanja”, da se ne sruši cijeli radni proces, već samo jedna sesija “sa gubitnikom”. “Količina memorije radnog procesa do koje se server smatra produktivnim” omogućava vam da blokirate nove veze čim se ovaj prag memorije premaši.

Preporučujem izolaciju radnih procesa prema bazi podataka, na primjer, navođenjem parametra „Broj informacione sigurnosti po procesu = 1“. Sa nekoliko visoko opterećenih baza podataka, ovo će smanjiti međusobni uticaj iu smislu pouzdanosti i performansi.

Poseban doprinos stabilnosti sistema daje “trošak” licenci/ključeva. U 8.3, postalo je moguće koristiti „softverski licencni menadžer“, koji podsjeća na „aladin“ menadžer. Cilj je da se ključ može staviti na zasebnu mašinu.

Implementiran je kao još jedan “servis” u upravitelju klastera. Možete koristiti, na primjer, „besplatan“ laptop. Dodajte ga u klaster 1C 8.3, kreirajte zasebnog upravitelja na njemu s uslugom „usluga licenciranja“. Možete umetnuti hardverski hasp ključ u svoj laptop ili aktivirati softverske licence.

Od najvećeg interesa za programere bi trebalo da budu “Zahtjevi za dodjelu funkcionalnosti”.

Dakle, na laptopu sa sigurnosnim ključem, kako ne biste pokretali korisnike na serveru klastera, morate dodati "zahtjeve" za objekt zahtjeva "Klijentska veza za sigurnost informacija" - "Ne dodijeli", tj. spriječiti radne procese na ovom serveru da obrađuju klijentske veze.

Još zanimljivija je mogućnost pokretanja "samo pozadinskih poslova" na proizvodnom serveru klastera bez korisničkih sesija. Na ovaj način možete premjestiti visoko opterećene zadatke (kod) na zasebnu mašinu. Štaviše, možete pokrenuti jedan pozadinski zadatak “zatvaranja mjeseca” koristeći “Vrijednost dodatnog parametra” na jednom računaru, a pozadinski zadatak “Ažuriranje indeksa punog teksta” na drugom se javlja kroz indikaciju “Vrijednost dodatni parametar”. Na primjer, ako navedete BackgroundJob.CommonModule kao vrijednost, možete ograničiti rad poslužitelja radnika u klasteru samo na pozadinske poslove s bilo kojim sadržajem. Vrijednost BackgroundJob.CommonModule.<Имя модуля>.<Имя метода>- će ukazati na određeni kod.

Rješavanje mogućih problema sa instalacijom

Prilikom instaliranja serverskog dijela 1C:Enterprise 8.1, možete kreirati novog korisnika ili odabrati postojeći nalog.

U slučaju odabira postojećeg naloga, morate dati ispravnu lozinku i potvrdu, inače će dalje pokretanje serverske strane rezultirati greškom.
Kada prvi put pokrenete Cluster Agent, kreira se zadani klaster.
Zadani klaster ima sljedeće karakteristike:
· broj porta – 1541;
· Opseg IP portova – 1560:1591;
· podrška za mnoge tokove posla – onemogućeno;
· jedan radni proces, broj porta se postavlja iz specificiranog raspona.
Ako dođe do bilo kakvih problema prilikom prvog pokretanja Cluster Agenta, zadani klaster možda neće biti kreiran. Ovo se manifestuje u činjenici da kada se agent servera (ragent) pokrene, on se pokreće, ali ne pokreće druge procese klastera (rmngr, rphost). Lista klastera srvribrg.lst izgleda ovako:
{
{0},
U tom slučaju, možete zaustaviti ragent proces, izbrisati listu klastera (srvribrg.lst) i ponovo pokrenuti ragent.

Provjerite podudaranje portova navedenih u parametru porta komandne linije za pokretanje usluge agenta servera i onih navedenih u dijalogu parametara centralnog servera na konzoli klastera:

— Zaustavite uslugu 1C:Enterprise 8.1 Server Agent.

Ako Server Agent radi kao aplikacija, može se zaustaviti pritiskom na kombinaciju tipki Ctrl+C.
- Provjerite u Task Manageru da su svi procesi ragent, rmngr, rphost završeni. Ako je potrebno, dovršite ih koristeći Task Manager.

— Otvorite svojstva usluge 1C:Enterprise 8.1 Server Agent.

- Obratite pažnju na red “Executable file” (putanja do izvršne datoteke). Ima parametar -d iza kojeg slijedi direktorij podataka klastera. Sve datoteke povezane s klasterom nalaze se u ovom direktoriju.
- Izbrišite sav sadržaj ovog direktorija.
— Pokrenite uslugu 1C:Enterprise 8.1 Server Agent.
- Provjerite u Task Manageru da su svi procesi ragent, rmngr, rphost pokrenuti.
— Pokrenite konzolu klastera i registrirajte centralni server u njoj. Konzola bi se trebala povezati sa centralnim serverom i prikazati jedan klaster kreiran po defaultu.
Mogući problemi s neuspjehom klastera servera uključuju probleme sa sigurnosnim ključevima, pravima servisnog naloga i neispravnim parametrima pokretanja.

  1. Ključ za zaštitu servera je instaliran LOKALNO na svakom serveru u preduzeću
  2. Nemojte postavljati servisni nalog sa praznom lozinkom
  3. Sa više klastera, korišteni portovi ne bi se trebali preklapati

Imajte na umu da se tokom procesa instalacije platforme 1C:Enterprise 8.1 mogu prikazati poruke o grešci. Najvjerovatnije poruke su navedene u nastavku. Navedeni su razlozi koji su izazvali poruke i koraci za njihovo uklanjanje.

Greška 1069: Usluga ne radi zbog greške pri prijavi

Problem je povezan sa pravima naloga da se pokreće kao sistemska usluga. Otvorite uslužni program Lokalne sigurnosne politike i dodajte korisnika (u čije ime su pokrenuti Cluster Work Servers) u Politiku za prijavu kao uslugu i Prijava kao za paketne poslove.
Ako su podaci pohranjeni u servisnim datotekama oštećeni, pokretanje proizvodnih servera klastera možda neće uspjeti. Uvjerite se da je pokrenut agent servera 1C:Enterprise 8.1 (ragent proces u Task Manager-u).
Ne zaboravite da je Windows revizija događaja takođe alat za analizu. Da biste to učinili, pogledajte da li se u Windows evidenciji događaja pojavljuju neke „sumnjive“ poruke.

Greška 8007056B / 800708C5

Nova lozinka ne zadovoljava pravila lozinki. Lozinka je možda prekratka ili ste je već nedavno koristili.
Razlog: navedena lozinka za nalog u dijaloškom okviru “Instaliraj 1C:Enterprise server” ne ispunjava zahtjeve sigurnosne politike.
Rešenje: Postavite novu lozinku za izabrani nalog koja ispunjava zahteve bezbednosne politike ili oslabi zahteve primenjene bezbednosne politike, tj. ne zahtijevaju "složenu" lozinku, ne ograničavaju broj znakova u lozinki, ne provjeravaju pokušaje ponavljanja itd.

Greška 1923: Nema privilegija za instalaciju putem usluge

Uzrok: Greška je povezana sa pravima instalacije naloga kao aplikacija. Ova greška je tipična za pokušaje instaliranja servera na kontroleru domena gdje su potrebne povećane mjere sigurnosti.
Rješenje: Nemojte koristiti kontroler domene da ugostite server preduzeća ili ublažite sigurnosne zahtjeve i navedite prava „Pokreni kao usluga“ ili „Pokreni kao skupni posao“ za odabrani nalog.

Greška 80070056

Vaša lozinka se nije mogla promijeniti. Svaka lozinka mora se koristiti najmanje x dana.
Uzrok i rješenje: Još jedna greška koja se javlja kada se krše zahtjevi sigurnosne politike za korištene lozinke. Rješenje je slično grešci 800708C5.

Windows utičnice - 11004(0x00002AFC)

1) Uverite se da na Radnom serveru klastera u Task Manageru radi sledeće:
Server agent (ragent.exe),
Cluster Manager (rmngr.exe),
Radni proces klastera (rphost.exe).
2) Da biste provjerili rezoluciju imena IP adrese, pokrenite na komandnoj liniji:
ping ime mašine
U odgovoru sistema na komandu, zanima nas da utvrdimo da li je IP adresa određena.
3) Ako je ime utvrđeno, ali radni proces još uvijek nije pronađen, provjerite da li je IP adresa imena određena<имя машины>I<имя машины>.<имя домена>nisu drugačije definisane.

(Windows utičnice - 10054(0x00002746).

Udaljeni host je nasilno zatvorio vezu.
Ova poruka se može primiti ako se server ponovo pokrene ili je radnički proces prisilno izbrisan.
Ova greška se obično ne pojavljuje prilikom ponovnog povezivanja. Ako greška i dalje postoji, potrebno je istražiti razloge kvara proizvodnih servera klastera.
Ova greška može nastati kada radni proces dostigne maksimalni kapacitet memorije na 32-bitnim sistemima.
Drugi slučaj je pokušaj povezivanja od strane klijenta s porukom o grešci:

(Windows Sockets - 10060(0x0000274C)

Pokušaj uspostavljanja veze bio je neuspješan jer... traženi odgovor nije primljen sa drugog računara u traženom vremenu ili je već uspostavljena veza prekinuta zbog pogrešnog odgovora sa već povezanog računara.
Suština ove greške je nedostatak odgovora unutar određenog vremena (timeout).
1) Provjerite da vaš zaštitni zid ne blokira promet aplikacija. Isključite svoj zaštitni zid.
Da biste to učinili, pokrenite naredbu u komandnoj liniji (komanda je dostupna počevši od Windows XP i Windows Server 2003; starije verzije nemaju ugrađeni zaštitni zid, ali se može instalirati softver treće strane):
netshfirewallsetopmodeonemogućiti
Ako je komanda uspješna, dobićete poruku:
UREDU.
Pored zaštitnog zida, mrežni filteri mogu blokirati promet. One su podrazumevano onemogućene. Ipak, pobrinite se da bude ovako:

  1. Otvorite fasciklu Mrežne veze.
  2. Kliknite desnim tasterom miša na mrežnu vezu koju želite da konfigurišete i izaberite Svojstva.
  3. Na kartici Uobičajeni su(za povezivanje putem lokalne mreže) ili na kartici Net(za sve ostale veze) izaberite Internet protokol (TCP/IP) i pritisnite dugme Svojstva.
  4. Kliknite na dugme Dodatno.
  5. Otvorite karticu Opcije, odaberite opciju TCP/IP filtriranje i pritisnite dugme Svojstva.
  6. Provjerite polje za potvrdu Omogući TCP/IP filtriranje (svi adapteri) uklonjeno.

2) Uvjerite se da resursi procesora nisu 100% učitani (CPU%).
3) Izmjerite mrežnu aktivnost klijentskog i serverskog interfejsa. Opterećenje mrežnog adaptera ne bi trebalo da prelazi 60%.

(Windows utičnice - 10061(0x0000274D)

Veza nije uspostavljena jer Odredišni računar je odbio zahtjev za povezivanje.
Tipičan razlog za ovu grešku je nepostojanje pokrenutog Server Agenta. Pokrenite server ručno ili ponovo pokrenite server da bi se automatski pokrenuo.

Odgovori na pitanja

Multiplatform 1C

Instalacija servera

P: Greška pri instalaciji 1c servera na MS Server 2008 R2 x64 Prilikom instaliranja 1c servera preko komandne linije, na primjer, ragent.exe -instsrvc -port 2040 -regport 2041 -range 2060:2091 -d “C:\Program Files\1cv82 \ (preuzeto sa ITS diska), komandna linija ispisuje poruku: „Greška! Greška OpenSCManager!” Usluga se u ovom slučaju ne kreira. Testirano 8.1.15.14 i 8.2.10.77

O: Da biste instalirali iz komandne linije na OS na kojem je prisutan UAC, morate koristiti uslugu RunAs, jer Čak i ako je korisnik član grupe administratora, UAC blokira radnje koje mijenjaju stanje sistema.

Zaštitni ključevi

P: Da li mi zaštitni ključ za Server 8.2 dozvoljava da pokrenem Server 8.1?
O: Da, ima

P: Da bih pokrenuo 1C server, da li su mi potrebni neki tipovi serverskih hasp ključeva? Lokalno, ili neće raditi za 5 korisnika?

O: da, serveru je potreban vlastiti ključ, lokalni korisnički i mrežni ključevi neće raditi. Više detalja u « « , slajd broj 30.

P: Recimo da se klaster 1C servera sastoji od 3 fizička servera. koliko je sigurnosnih ključeva potrebno?

P: Postoji terminal server i ključ za 5 licenci, potrebno je kupiti 6. dodatnu licencu. licenca. Da li je moguće instalirati na server pored ključa na 5? I hoće li svih 6 korisnika raditi u terminalskim sesijama ili 5 - pod terminalom, a 1 u verziji datoteke?
O: Ne, neće. Šesta licenca u obliku lokalnog ključa mora biti priključena na računar korisnika, ali ne i na terminal.

Ažuriranja 1C servera

P: Kada se objavi nova verzija 8.2.xxx platforme, koja je procedura za ažuriranje servera i klijenata?
O: 8.2 distribucije instaliraju svoje fajlove u različite foldere (svaka verzija ima svoj folder), tj. teoretski, ostaje moguće pozvati nekoliko verzija servera paralelno.

Nisam imao nikakvih problema. Međutim, morate pažljivo pratiti portove koje zauzima instanca 1C servera. Ne bi trebalo biti raskrsnica.

Postavljanje 1C servera

P: U 1C 8.1, koji je najbolji način da se informacione baze, ako ih ima više, smjeste u jedan klaster ili da se napravi poseban klaster za svaku bazu podataka? O: Sa velikim volumenom ili opterećenjem, testne baze podataka moraju biti smještene u odvojene klastere!

P: PITANJE: Da li je radni tok 1C:Enterprise 8.1 jednonitna aplikacija ili aplikacija s više niti? One. može li se više jezgri učitati s jednim povezanim korisnikom? Sa nekoliko? Šta je sa tokom rada 1C:Enterprise 8.2? Hvala ti.
O: 1Sv8.exe i rphost.exe u verziji 8.1 su trošili 1 jezgro. Budući da je u 8.1 konekcija klijenta striktno vezana za radni proces, možemo uslovno pretpostaviti da se obrada 1C klijenta obavlja unutar jednog jezgra. Izuzetak je DBMS, koji koristi kernele bez obzira na to kako 1C server radi.

U verziji 8.2, veze su zamijenjene sesijama. Sesije se možda već izvode u različitim radničkim procesima. Stoga, pozivanje 8.2 single-thread-a vjerovatno nije ispravno. Klijent 8.2 takođe vizuelno učitava nekoliko jezgara, pa ovo:

Platforma 8.2 ne implementira sve mogućnosti višenitnog sistema, ali mnogo bolje koristi hardverske mogućnosti u odnosu na 8.1, uključujući i paralelizam.

P: Da li je potrebno imati više radnih procesa 1C:Enterprise 8.1 za server baze podataka (MS SQL) za učitavanje više jezgara? (Primjećuje se da MS SQL obično „učitava“ samo jedno jezgro, tj. do „paralelizacije“ obrade jednog zahtjeva na više jezgara po pravilu ne dolazi.) Hvala.
O: Nema potrebe da se posebno upravlja MS SQL-om, to je prilično samopodešavajući sistem koji koristi resurse po potrebi. Možete kontrolisati paralelizam izvršavanja:

EXEC sys.sp_configure N’max stepen paralelizma’, N’5′
GO
PONOVNO KONFIGURIRAJTE SA PREMAZANJEM
GO

Na 1C serveru možete kreirati nekoliko radnih procesa na osnovu činjenice da jedan radni proces ne pruža mogućnost korisnicima da se ponovo povežu u slučaju pada radnog procesa. Proces 2 (na 8.2 bolje ga je napraviti “backup”) rješava ovaj problem. Ali ima smisla dodati treći ili više radnih procesa samo ako su prva dva radna procesa jako opterećena (više od 90%). Nema smisla nepotrebno umnožavati radne procese; to može pogoršati produktivnost.

O: Mora postojati najmanje jedan backup radni proces u 8.2.

Failover Cluster

P: Pitanje o omogućavanju redundancije za 1s 8.2 klastere. Ako se naš server sruši (čistačica je izvukla žicu), tada naziv mreže, na primjer „server:2540“ neće biti dostupan. Kako klijent čiji niz veze kaže “server:2540” zna da treba da se poveže sa rezervnim klasterom? gdje će dobiti ime drugog servera? Šta ako u nizu veze baze podataka napišete klastere odvojene zarezima?
O: Nekoliko klastera je kombinovano u „grupu redundanse“. U tu svrhu postoji „lista rezervacija“ u dodatku klastera.

Kada klijent prvi put pristupi klasteru, daje mu se lista klastera uključenih u redundantnu grupu.

Ako vas klijent nikada nije kontaktirao, onda u ovom slučaju morate ručno navesti adrese svih klastera, na primjer storm:2541,monster:2541.

Sinhronizirani podaci se razmjenjuju između redundantnih klastera.

P: Šta se dešava nakon što se glavni klaster vrati? kada su korisnici prešli na backup.

O: Oni se vraćaju nazad. Može doći do pauza tokom prebacivanja tokom sinhronizacije ovih klastera.

Pozadinski poslovi

P: Kako izbrisati posao u pozadini koji radi na serverima 1C:8.1 i 1C:8.2?

O: Mogućnost otkazivanja rutinskog zadatka radi samo ako se kod izvršava u okviru ugrađenog jezika 1C:Enterprise. Ako se kod izvršava u vanjskim bibliotekama, tada se takav zadatak ne može otkazati osim nasilnim prekidom toka posla. Ako u procesu postoji blok StartTransaction() - CommitTransaction(), onda je malo vjerojatno. Ostali poslovi u pozadini mogu se izbrisati putem konzole poslova.

Regulatorne procedure

P: Da li je moguće uništiti bazu tokom T&I?

O: Nisu mi poznati takvi slučajevi, ali IMHO sve je moguće. Stoga bi bilo dobro napraviti rezervnu kopiju prije T&I.

P: Vjačeslave, iz kojih razloga ne vršite ponovno indeksiranje pomoću 1C testiranja i ispravljanja?
O: Mogućnosti DBMS-a su pogodnije za ove svrhe, budući da u suštini takođe obnavljaju indekse, ali ne zahtevaju isključivo zaplenu baze podataka.

Tehnološki magazin

P: Dobar dan. Pitanje iz tehnološkog časopisa: Moram da dobijem kopije ekrana radne stanice u slučaju 1C grešaka. Da li za ovo trebam podesiti tehnološku evidenciju na radnim stanicama ili je to samo za server?
O: Možete konfigurirati primanje snimka ekrana samo kada platforma padne, a ne kada dođe do greške. Međutim, nema mnogo korisnosti u takvoj operaciji, sasvim je dovoljno prikupiti izuzetne situacije pomoću tehnološkog dnevnika. Istovremeno, većina grešaka se može vidjeti korištenjem TZ-a na strani 1C servera. Izuzetak mogu biti događaji kao što je "greška formatiranja toka" povezana sa zastarjelim kešom metapodataka.

Problemi i greške

P: Da li ste naišli na problem - nestanak postavki izvještaja za korisnike prilikom dinamičkog ažuriranja konfiguracija na platformi 8.2. Ima li preporuka kako se nositi s tim?
O: Problemi vezani za dinamičko ažuriranje se ogledaju u “1C serveri: Enterprise 8.1 i 8.2 - s čime jesti”), slajd broj 60. Obriši keš memoriju. Možda je u nekim slučajevima potrebno razumjeti gdje se točno pohranjuju korisničke postavke. Ako je potrebno, pohraniti kao binarne podatke u registar informacija.

P: Srodno pitanje, jer... ovo je relevantno za način rada datoteke: koje greške ispravlja chdbfl.exe?
O: Ovo je alat za ispravljanje grešaka strukture skladišta podataka. Ovo može biti situacija u kojoj se, na primjer, pojavljuje “Datoteka baze podataka je oštećena.../1Cv8.1CD”. One. popravlja oštećenje datoteke baze podataka. Međutim, ne obavlja T&I funkcije. Pokrećem chdbfl.exe ako se T&I ne pokrene uspješno.

P: Recite mi da li ste naišli na takav problem. kada postoji veliki broj korisnika u bazi podataka (oko 40) pri obradi velikih dokumenata, na primjer, odražavajući PO u reg. Računajući za oko 8000 linija. Poruka o grešci je da nema dovoljno memorije na 1C serveru preduzeća i korisnik koji je pokrenuo ovaj dokument pada. Dokument se tada može obraditi tek nakon ponovnog pokretanja agenta 1C servera.
O: Izgleda da curi memorija:

1. Ponovo pokrenite 1C server, povećajte broj radnih procesa i zadržite samo ovu jednu bazu podataka u klasteru.

2. Polupajte držanje u porcijama, recimo 1000 redova odjednom. Koristeći TZ, pratite objekte koji zauzimaju memoriju na početku operacije, ali ne oslobađaju memoriju nakon završetka.

3. Instalirajte x64 verziju, povećajte količinu RAM-a, prebacite se na 8.2.

P: Pitanje o testiranju i upravljanju. Da li je moguće pokrenuti “Provjeru referentnog integriteta” na osnovu URDB-a sa odabirom na osnovu prenesenih podataka? (tj. u nekim čvorovima fizički nema objekata, ali postoje veze s njima). Hvala ti!
O: Nažalost, to još nije moguće.

P: Zašto testiranje i popravljanje ne riješi sve probleme odjednom, morate li ga pokrenuti nekoliko puta?

O: Samo programeri mogu tačno odgovoriti. T&I vodim prema propisima (ciklički), tako da mi ovo pitanje nije previše relevantno. T&I se mora raditi ne samo jednom, već stalno, kao "MOT za automobil."

P: Postoji li razlika između T&I 8.1 i 8.2?

O: U trenutku pisanja odgovora i izdanja 8.2.10, ne znam razliku.

P: Da li je potrebno izvršiti reindeksaciju tokom restrukturiranja?
O: Nema potrebe.

Ostalo

P: Poštovani, da li je neko pokušao da preslika baze podataka koristeći MSSql 2008?

P: Pitanje o forsiranju dijeljene memorije na serveru 1s 8.2

O: Nema potrebe ništa forsirati, server će razumjeti.

P: Za 1C:Enterprise 8.1 uočene su situacije kada na istom hardveru verzija servera datoteka sa „težim“ operacijama i jednim korisnikom radi mnogo brže od klijent-server verzije, kada sve „linkove“ (baza podataka server, 1C server :Enterprise i client) su instalirani na istom serveru. Štoviše, prilikom izvođenja ove „teške“ operacije nema očitih hardverskih preopterećenja (opterećenje procesora, memorije i tvrdih diskova je minimalno). Odnosno, ima puno hardverskih resursa, ali radi sporo. Od čega se možemo „odmarati“? Hvala ti.
O: Prednost klijent-server arhitekture sa stanovišta performansi je mogućnost obrade zahtjeva klijenta za podacima u PARALELNOM sistemu. One. Brzina protoka nije pokazatelj na osnovu kojeg se izvode opći zaključci. Mehanizmi koji poboljšavaju konkurentnost i dalje mogu malo smanjiti performanse unutar jedne niti.

Da biste nedvosmisleno pronašli usko grlo u vašem slučaju, potrebno je da dobijete radno opterećenje serverske opreme i da ga na vreme uporedite sa najdužim operacijama u klijent-server režimu. Često je to prekomjerno kretanje podataka na strani klijenta. One. Umjesto izvođenja operacija na 1C serveru, podaci iz baze podataka se prenose preko servera do klijenta.

Brzina u jednoj niti verzije klijent-server će sustići samo performanse verzije datoteke. Vrijedi se pozabaviti ovim problemom ako se vrijeme rada u apsolutnim brojevima mjeri u ne manje od minuta. Optimizacija u roku od 1-3 sekunde upita je upitna.

P: O razlici između Windows terminala i 1C tankog klijenta.
O: Dok većina rješenja nije POTPUNO prevedena na 8.2, definitivno je teško govoriti o praktičnom poređenju ovih tehnologija.

Jasno je da bi 1C tanki klijent trebao trošiti manje prometa i pružiti mogućnost rada putem weba. Ali to je nešto što tek treba implementirati, a terminalna rješenja se sada vrlo široko koriste.

Za konzervativne, pragmatične menadžere projekata koji pretvaraju 8.1 u 8.2 - terminalno rješenje. Za male projekte sa niskim troškovima grešaka i konfiguracijom koja se odmah implementira sa upravljanim obrascima i sistemima kontrole pristupa, IMHO je poželjniji tanki klijent.

P: Kako provesti testiranje opterećenja bliskim stvarnim uvjetima? Na kraju krajeva, ne možete natjerati korisnike da "kliknu na nešto".

O: 1C: Test centar sa izborom najtežih operacija, 100% reprodukcija nije potrebna, sami klikovi nisu teški, uglavnom vođenje i traženje izvještaja. Održat će se poseban webinar o testiranju. Takođe ću vam reći detaljnije.

Prije svega, nakon instaliranja klastera 1C, bilo je potrebno kreirati tokove rada. Kako se ispostavilo, procesi klastera počeli su se automatski kreirati ovisno o opterećenju baze podataka.

Probno pokretanje pozadinskih poslova glavne baze podataka dovelo je do toga da 1C klaster beskonačno preopterećuje rphost.exe, a dodatni rphost.exe nije želio da se kreira. Nakon kopanja kroz podešavanja, sve je postalo jasno.

Maksimalna memorija toka rada je količina memorije koju radni procesi mogu koristiti zajedno. Morate biti vrlo pažljivi kada postavljate parametar, mjeren u bajtovima. Ako postavite pogrešnu vrijednost (nedovoljno za normalan rad korisnika), korisnici će dobiti grešku "Nema dovoljno slobodne memorije na 1C serveru." Ovu grešku možete dobiti i kada je ponestalo memorijske kvote na 1C serveru.

Sigurna potrošnja memorije po pozivu– omogućava vam kontrolu potrošnje memorije tokom poziva servera, mjereno u bajtovima. Ako poziv koristi više memorije od očekivanog, ovaj poziv će biti dovršen unutar 1C klastera bez ponovnog pokretanja radnog procesa (rphost.exe). U skladu s tim, "gubitnik" koji je uputio poziv servera izgubit će sesiju s 1C bazom podataka bez utjecaja na rad drugih korisnika.

u jednom GB – 1073741824 bajtova, dakle u 2 GB – 2147483648 bajtova

Količina memorije za radne procese do koje se server smatra produktivnim - ako se ovaj parametar prekorači, server u 1C klasteru prestat će prihvaćati nove veze.

Broj sigurnosti informacija po procesu– omogućava vam da izolujete informacijske baze za radne procese. Prema zadanim postavkama, trenutni 1C klaster je postavljen na “ 8 “, ali tokom nekoliko sati rada server se ponašao vrlo nestabilno, korisničke sesije su se zamrznule. Nakon izolacije svake infobaze (vrijednost – “1”) problemi su nestali.

Broj veza po procesu- zadana vrijednost " 128 “. S obzirom na to da postojeća baza podataka ima jako puno pozadinskih zadataka (logističke kalkulacije, analiza cjenovnika, analiza konkurenata, itd.), odlučeno je da se broj smanji na „25“.

Postavke samog 1C klastera su se neznatno promijenile:

Nivo tolerancije grešaka– ovo je broj servera koji rade istovremeno mogu otkazati, a to neće dovesti do abnormalnog ukidanja korisnika. Backup usluge se automatski pokreću u količini potrebnoj da se osigura navedena tolerancija grešaka. U realnom vremenu, aktivni servis se replicira na rezervne.

Način dijeljenja opterećenja– postoje dvije opcije za parametar: „Prioritet prema performansama“ – troši se više serverske memorije i performanse su veće, „Prioritet po memoriji“ – 1C klaster štedi memoriju servera.

Server 8.3 karakteriše novi redizajniran interni kod, iako se „izvana“ može činiti da se radi o malo modifikovanom 8.2.

Server je postao „automatski konfigurabilniji“ neki parametri, kao što je broj radnih procesa, više se ne kreiraju ručno, već se izračunavaju na osnovu opisa zahteva tolerancije grešaka i zadataka pouzdanosti.

Ovo smanjuje vjerovatnoću pogrešne konfiguracije servera i smanjuje kvalifikacijske zahtjeve za administratore.

Razvijen je mehanizam za balansiranje opterećenja, koji se može koristiti ili za povećanje performansi sistema u cjelini, ili za korištenje novog moda „uštede memorije“, koji vam omogućava da radite „sa ograničenom memorijom“ u slučajevima kada je konfiguracija korišteno "voli da pojede memoriju."

Stabilnost rada pri korištenju velikih količina memorije će biti određena novim parametrima proizvodnog servera.

Posebno je zanimljiv parametar “sigurna potrošnja memorije po pozivu”. Za one koji slabo znaju šta je to, bolje je da ne treniraju na "produktivnoj" osnovi. Parametar “Maksimalna veličina memorije radnih procesa” omogućava, u slučaju “prelivanja”, da se ne sruši cijeli radni proces, već samo jedna sesija “sa gubitnikom”. “Količina memorije radnog procesa do koje se server smatra produktivnim” omogućava vam da blokirate nove veze čim se ovaj prag memorije premaši.

Preporučujem izolaciju radnih procesa prema bazi podataka, na primjer, navođenjem parametra „Broj informacione sigurnosti po procesu = 1“. Sa nekoliko visoko opterećenih baza podataka, ovo će smanjiti međusobni uticaj iu smislu pouzdanosti i performansi.

Poseban doprinos stabilnosti sistema daje “trošak” licenci/ključeva. U 8.3, postalo je moguće koristiti „softverski licencni menadžer“, koji podsjeća na „aladin“ menadžer. Cilj je da se ključ može staviti na zasebnu mašinu.

Implementiran je kao još jedan “servis” u upravitelju klastera. Možete koristiti, na primjer, „besplatan“ laptop. Dodajte ga u klaster 1C 8.3, kreirajte zasebnog upravitelja na njemu s uslugom „usluga licenciranja“. Možete umetnuti hardverski hasp ključ u svoj laptop ili aktivirati softverske licence.

Od najvećeg interesa za programere bi trebalo da budu “Zahtjevi za dodjelu funkcionalnosti”.

Zahtjevi za dodijeljenu funkcionalnost 1c

Dakle, na laptopu sa sigurnosnim ključem, kako ne biste pokretali korisnike na serveru klastera, potrebno je dodati "zahtjeve" za objekt zahtjeva "Klijentska veza za sigurnost informacija" - "Ne dodijeli", tj. spriječiti radne procese na ovom serveru da obrađuju klijentske veze.

Još zanimljivija je mogućnost pokretanja "samo pozadinskih poslova" na proizvodnom serveru klastera bez korisničkih sesija. Na ovaj način možete premjestiti visoko opterećene zadatke (kod) na zasebnu mašinu. Štaviše, možete pokrenuti jedan pozadinski zadatak “zatvaranja mjeseca” koristeći “Vrijednost dodatnog parametra” na jednom računaru, a pozadinski zadatak “Ažuriranje indeksa punog teksta” na drugom se javlja kroz indikaciju “Vrijednost dodatni parametar”. Na primjer, ako navedete BackgroundJob.CommonModule kao vrijednost, možete ograničiti rad poslužitelja radnika u klasteru samo na pozadinske poslove s bilo kojim sadržajem. Vrijednost BackgroundJob.CommonModule.<Имя модуля>.<Имя метода>- će ukazati na određeni kod.

Najbolji članci na ovu temu