Nema dovoljno memorije na poslužitelju 1C - rješenja

Prilikom postizanja maksimalne vrijednosti tijeka rada na poslužitelju se pojavljuju pogreške 1C. Pogledat ćemo jedan od njih, posvećen temi "Nema dovoljno slobodne memorije na poslužitelju 1C: Enterprise".

Metode za rješavanje pogreške "Nema dovoljno slobodne memorije na poslužitelju 1C: Enterprise".

sadržaj

  • 1 Razlozi za punjenje memorije
    • 1.1 Nedovoljna željezna snaga
    • 1.2 Nedostatak memorije za dodatne informacije
    • 1.3 Greške kodiranja
    • 1.4 Pogreške u programu
  • 2 Pa što da radimo s poslužiteljem 1C
    • 2.1 Ponovno pokrenite poslužiteljsku uslugu
    • 2.2 Postavke automatskog ponovnog pokretanja i klastera
    • 2.3 Broj radnih procesa
    • 2.4 Alat za rad s bazom
    • 2.5 Provjera konfiguracije

Razlozi za punjenje memorije

Količina memorijskih tijekova rada pri radu na poslužitelju poslužitelja 1C nije beskonačna. Sa svojim maksimalnim opterećenjem, korisnik vidi ispred sebe ugodnu novu poruku - "Nema dovoljno slobodne memorije na poslužitelju 1C: Enterprise".


Prvo, razlozi za nastanak takvih poruka - zašto memorija nije dovoljna. Moguće je nekoliko:

Nedovoljna željezna snaga

Ako sustav zapošljava do pet osoba, dovoljan je jedan kompjutorski osam gigabajta s dva vijka (na jednom - SERVER,na drugom - SQL) i dodatno instaliranim čipovima. Ali još jedna stvar je oko trideset korisnika, tisuće primarnih dokumenata. Ovdje i SQL trebaju biti izdvojeni na zasebnom poslužitelju, a jedan terminalni poslužitelj više ne može nositi.

Nedostatak memorije za dodatne informacije

Tipične konfiguracije pokušavaju opisati doslovce sve procese koje programer može zamisliti prilikom pokušaja stvaranja univerzalnog računovodstvenog alata nazvanog 1C: Enterprise. Stoga, određeni korisnik prima dodatnu prtljagu u obliku ponora objekata metapodataka, dodatnih SQL tablica i neiskorištenih pojedinosti. Stalna registracija i ponovno indeksiranje sve to nepotrebno u registru programa traje dosta vremena i puno prostora.

Greške kodiranja

Preopterećenje poslužitelja također se javlja kada neki programeri pogrešno razumiju (ponekad) neke procese i uvedu svoje "štaglike", što povećava trajanje zadataka (i broj radnih procesa).

Pogreške u programu

Između ostalog, i to je često gotovo glavni razlog - program 1C ima nevjerojatnu količinu unutarnjih pogrešaka. Neki od njih su fiksni u kasnijim izdanjima.Veliki broj foruma posvećen je tim pogreškama, u kojima administratori, raspravljajući o redovitim trikovima, šaleći kažu da vjerojatno samo Tadžikari rade u jednoj (Dzhamshut i Ravshan).

Pa što da radimo s poslužiteljem 1C

Budući da uzroci problema mogu biti različiti, izlaz iz situacije također su različiti:

Ponovno pokrenite poslužiteljsku uslugu

Najbrže i najjednostavnije rješenje je ponovo pokrenuti poslužiteljsku uslugu. Iz naredbenog retka sustava Microsoft Windows (cmd): naredba je zaustaviti - net stop "1C: Enterprise 8.3 (ili vašu verziju) poslužiteljskog agenta" i započeti - net start "1C: Enterprise 8.3 (prema vašoj verziji) Agent poslužitelja". Takva odluka u potpunosti ne uklanja pitanje - najčešće se pogreška ponavlja. Učestalost ponavljanja ovisi o broju klijenata i broju radnih procesa.

VAŽNO. Da biste mogli ponovno pokrenuti, morate imati odgovarajuća prava.

Postavke automatskog ponovnog pokretanja i klastera

Ponekad čak i jedan izvršeni tijek rada može potrajati gotovo cijeli RAM. Ovaj zadatak rješava se povećanjem broja u postavkama klastera. Dodajte približno jedan postupak svakih petnaest do trideset korisnika.

Ponovno pokreni interval. Nedugo prije nego što je prethodno dovršen, započinje novi rphost.exe proces.- Poveznice sa starog se prenose na njega. Dopuštena količina memorije - ako se ta vrijednost prekorači, započet će drugi mjerač vremena.

Interval za prekoračenje maksimalne glasnoće - kada timer premaši ovu vrijednost, pokrenut će novi postupak. A veze sa starog bit će povezane s njom. A stari, pak, označen je neaktivan. Isključeno. procesi se zaustavljaju - nakon što je vrijednost ovog parametra prošla nakon što je tijek rada označen kao neaktivan, operativni sustav će ga prekinuti. Ako je ovaj parametar postavljen na "0" - tada se svi neaktivni procesi neće automatski prekinuti.

VAŽNO. Ova je postavka karakteristična po tome što isključuje iz baze podataka samo one klijenata koji su pokrenuli netočno izvješće. I ostatak - glatko će se premjestiti na nove veze (bez prekida s njegove baze).

Broj radnih procesa

Kada prepunite rphost.exe s pozadinskim zadacima i nedostatkom stvaranja novih procesa, trebate provjeriti postavke:

Maks. Kapacitet memorije radnih procesa je ukupni kapacitet memorije za sve procese zajedno. Izmjereno u bajtovima. Ako postavite pogrešnu vrijednost (neadekvatna za normalni rad), svatko će dobiti pogrešku "Nema dovoljno slobodne memorije na poslužitelju 1c".

Sigurna potrošnja memorije za 1 poziv - kontrolira potrošnju memorije kada poslužitelj poziva (u bajtovima). Kada se koristi pozivom s više od navedenog broja, to će biti dovršeno unutar klastera. Neće se ponovno pokrenuti. Gubitak sesije neće utjecati na druge klijente.

Količina memorije za procese do vrijednosti čija se poslužitelj smatra produktivnim sustavom - kada se ta vrijednost postigne, poslužitelj klastera prestaje prihvaćati veze. Broj baza podataka o procesu - izoliranje IB postupaka. Nakon izolacije baze podataka (s uvođenjem vrijednosti - "1"), problemi se obično rješavaju.

Broj veza po procesu - zadana vrijednost je "128". Ako se trenutačna baza podataka jako razlikuje od pozadinskih poslova, tada se taj broj može smanjiti, na primjer, na "25". S takvim postavkama, postavka klastera bit će promijenjena:

Razina tolerancije pogrešaka - pokazuje broj poslužitelja koji ne bi pali klijente ako ne uspiju. Istovremeno, rezervni servisi automatski će se pokrenuti u traženom broju.

Način dijeljenja učitavanja - ima dvije mogućnosti. Ako postavite "Prioritet na izvedbu" - tada će memorija poslužitelja potrošiti više za povećanje performansi. Ako odaberete "Prioritet u memoriji" - spremit će se skup 1C memorije.

Alat za rad s bazom

Za rad s bazom podataka potrebno je koristiti alate MS SQL DBMS-a.

Provjera konfiguracije

Možda je razlog za pogrešku pogrešne informacije sadržane u konfiguraciji. Da biste je testirali, morate pokrenuti naredbu "Potvrdi konfiguraciju". (Ne smije se miješati s testiranjem!). Prije izvršenja, morate provjeriti instalaciju potvrdnog okvira (potvrdni okvir) - "logičan integritet". Ako se otkrije nepravilnost, to će se odraziti u poruci. I pogreške će se izbrisati.

Razmotrili smo razlog nedostatka slobodne memorije na poslužitelju 1C i mogućih načina da se to eliminira. Jedan od načina zasigurno će riješiti problem.

Komentirajte svoje iskustvo u ovom pitanju - podijelite vijesti o ovom pitanju.