Računalniki Windows Internet

Kaj storiti, če program zamrzne? Kako zapreti zamrznjen program 1c zamrzne pri shranjevanju

V zadnjem času so se uporabniki in skrbniki vse bolj začeli pritoževati, da so nove konfiguracije 1C, razvite na podlagi upravljane aplikacije, počasne, v nekaterih primerih nesprejemljivo počasne. Jasno je, da nove konfiguracije vsebujejo nove funkcije in zmožnosti, zato so bolj zahtevne glede virov, vendar večina uporabnikov ne razume, kaj predvsem vpliva na delovanje 1C v datotečnem načinu. Poskusimo popraviti to vrzel.

V naši smo se že dotaknili vpliva zmogljivosti diskovnega podsistema na hitrost 1C, vendar se je ta študija nanašala na lokalno uporabo aplikacije na ločenem računalniku ali terminalskem strežniku. Hkrati večina manjših izvedb vključuje delo z datotečno bazo preko omrežja, kjer je eden od uporabnikovih osebnih računalnikov uporabljen kot strežnik, ali namenski datotečni strežnik na osnovi običajnega, največkrat tudi poceni računalnika.

Majhna študija virov v ruskem jeziku na 1C je pokazala, da se ta težava pridno zaobide; v primeru težav se običajno svetuje, da preklopite na način odjemalec-strežnik ali terminal. Prav tako je postalo skoraj splošno sprejeto, da konfiguracije v upravljani aplikaciji delujejo veliko počasneje od običajnih. Praviloma so argumenti podani "železo": "tukaj je računovodstvo 2.0 pravkar poletelo in" trojka "se komaj premika, seveda je v teh besedah ​​nekaj resnice, zato poskusimo ugotoviti.

Poraba virov na prvi pogled

Pred začetkom te študije smo si zadali dva cilja: ugotoviti, ali so konfiguracije, ki temeljijo na upravljanih aplikacijah, dejansko počasnejše od običajnih konfiguracij in kateri viri imajo največji vpliv na zmogljivost.

Za testiranje smo vzeli dva virtualna stroja z operacijskim sistemom Windows Server 2012 R2 oziroma Windows 8.1 z 2 jedroma gostiteljskega Core i5-4670 in 2 GB RAM-a, kar ustreza povprečnemu pisarniškemu računalniku. Strežnik je bil postavljen na polje RAID 0 dveh, odjemalec pa na podobno polje diskov za splošno uporabo.

Kot eksperimentalne podlage smo izbrali več konfiguracij izdaje Računovodstvo 2.0 2.0.64.12 , ki je bil nato posodobljen na 3.0.38.52 , vse konfiguracije so se izvajale na platformi 8.3.5.1443 .

Prva stvar, ki pritegne pozornost, je povečana velikost informacijske baze trojke, ki se je znatno povečala, pa tudi veliko večji apetiti po RAM-u:

Že smo pripravljeni slišati običajno: "kaj so dodali tej trojici", a ne hitimo. Za razliko od uporabnikov odjemalsko-strežniških različic, ki zahtevajo bolj ali manj usposobljenega skrbnika, uporabniki datotečnih različic le redko razmišljajo o vzdrževanju baze podatkov. Tudi zaposleni v specializiranih podjetjih, ki služijo (beri - posodabljajo) te baze, o tem redko razmišljajo.

Medtem je informacijska baza 1C polnopravni DBMS lastnega formata, ki zahteva tudi vzdrževanje, za to pa obstaja celo orodje, imenovano Testiranje in popravljanje informacijske baze. Morda je ime igralo kruto šalo, ki nakazuje, da gre za orodje za odpravljanje težav, vendar je problem tudi slabo delovanje, prestrukturiranje in ponovno indeksiranje, skupaj s stiskanjem tabel, pa sta vsem administratorjem RDBMS dobro znana orodja za optimizacijo baze podatkov. Preverimo?

Po uporabi izbranih dejanj je baza dramatično "izgubila težo", postala je celo manjša od "dvojke", ki je prav tako nihče ni optimiziral, prav tako se je nekoliko zmanjšala poraba RAM-a.

Kasneje, po nalaganju novih klasifikatorjev in imenikov, ustvarjanju indeksov itd. velikost baze se bo povečala, na splošno so baze "trojke" večje od baz "dveh". Vendar to ni bolj pomembno, če je bila druga različica zadovoljna s 150-200 MB RAM-a, potem nova izdaja že potrebuje pol gigabajta in to vrednost je treba upoštevati pri načrtovanju potrebnih virov za delo s programom. .

Mreža

Pasovna širina omrežja je eden najpomembnejših parametrov za omrežne aplikacije, zlasti kot 1C v datotečnem načinu, ki prenaša znatne količine podatkov po omrežju. Večina omrežij malih podjetij je zgrajena na podlagi poceni opreme 100 Mbps, zato smo začeli testiranje s primerjavo kazalnikov zmogljivosti 1C v omrežjih 100 Mbps in 1 Gbps.

Kaj se zgodi, ko zaženete bazo datotek 1C prek omrežja? Odjemalec prenese precej veliko količino informacij v začasne mape, še posebej, če je to prvi "hladen" zagon. Pri 100 Mb/s pričakovano naletimo na pasovno širino in prenos lahko traja precej časa, v našem primeru približno 40 sekund (cena delitve grafa je 4 sekunde).

Drugi zagon je hitrejši, saj se nekateri podatki shranijo v predpomnilnik in tam ostanejo do ponovnega zagona. Prehod na gigabitno omrežje lahko znatno pospeši nalaganje programa, tako "hladnega" kot "vročega", pri čemer se opazi razmerje vrednosti. Zato smo se odločili, da rezultat izrazimo v relativnih izrazih, pri čemer največjo vrednost vsake meritve vzamemo za 100 %:

Kot lahko vidite iz grafov, se Računovodstvo 2.0 nalaga dvakrat hitreje pri kateri koli omrežni hitrosti, prehod s 100 Mbps na 1 Gbps vam omogoča štirikratno pospešitev časa prenosa. V tem načinu ni nobene razlike med optimiziranimi in neoptimiziranimi bazami podatkov Trojka.

Preverili smo tudi vpliv hitrosti omrežja na zahtevno delovanje, na primer pri ponovnem gostovanju skupine. Rezultat je izražen tudi v relativnih izrazih:

Tukaj je bolj zanimivo, optimizirana osnova "trojke" v omrežju 100 Mbit / s deluje z enako hitrostjo kot "dva", neoptimizirana pa kaže dvakrat najslabši rezultat. Na gigabitu so razmerja ohranjena, neoptimizirana »trojka« je tudi dvakrat počasnejša od »dvojke«, optimizirana pa zaostaja za tretjino. Tudi prehod na 1 Gb / s vam omogoča, da zmanjšate čas izvajanja za faktor tri za različico 2.0 in dvakrat za različico 3.0.

Da bi ocenili vpliv hitrosti omrežja na vsakodnevno delo, smo uporabili merjenje uspešnosti z izvajanjem zaporedja vnaprej določenih dejanj v vsaki bazi podatkov.

Pravzaprav za vsakodnevna opravila pasovna širina omrežja ni ozko grlo, neoptimizirana "trojka" je le 20% počasnejša od dvojke, po optimizaciji pa se izkaže, da je približno enako hitrejša - vplivajo prednosti dela v načinu tankega odjemalca. Prehod na 1 Gb / s optimizirani bazi ne daje nobenih prednosti, neoptimizirana osnova in dvojka pa začneta delovati hitreje, kar kaže majhno razliko med njima.

Iz opravljenih testov postane jasno, da omrežje ni ozko grlo za nove konfiguracije, upravljana aplikacija pa deluje še hitreje kot običajno. Priporočate lahko tudi prehod na 1 Gb/s, če so za vas kritične težke naloge in hitrost nalaganja baze podatkov, v drugih primerih pa vam nove konfiguracije omogočajo učinkovito delo tudi v počasnih 100 Mb/s omrežjih.

Zakaj se torej 1C upočasni? Bomo še raziskali.

Diskovni podsistem strežnika in SSD

V prejšnjem članku smo dosegli povečanje zmogljivosti 1C s postavitvijo baz podatkov na SSD. Morda zmogljivost strežniškega diskovnega podsistema ni dovolj? Izmerili smo delovanje diskovnega strežnika med skupinskim pogonom v dveh bazah podatkov hkrati in dobili precej optimističen rezultat.

Kljub razmeroma visokemu številu vhodno-izhodnih operacij na sekundo (IOPS) - 913, dolžina čakalne vrste ni presegla 1,84, kar je zelo dober rezultat za dvodiskovno polje. Na podlagi tega lahko domnevamo, da bo zrcalo iz običajnih diskov dovolj za normalno delovanje 8-10 omrežnih odjemalcev v težkih načinih.

Torej je SSD potreben na strežniku? Najboljši odgovor na to vprašanje bo pomagalo testiranje, ki smo ga izvedli po podobni metodologiji, omrežna povezava je povsod 1 Gb / s, rezultat je izražen tudi v relativnih vrednostih.

Začnimo s hitrostjo nalaganja baze podatkov.

Morda se komu zdi presenetljivo, vendar baza SSD na strežniku ne vpliva na hitrost prenosa baze podatkov. Glavni omejevalni dejavnik pri tem, kot je pokazal prejšnji test, sta prepustnost omrežja in zmogljivost odjemalca.

Preidimo na ponovno ožičenje:

Zgoraj smo že ugotovili, da je zmogljivost diska povsem dovolj tudi za zahtevno delovanje, tako da tudi hitrost SSD-ja ni prizadeta, razen neoptimizirane osnove, ki je dohitela optimizirano na SSD-ju. Pravzaprav to še enkrat potrjuje, da optimizacijske operacije organizirajo informacije v bazi podatkov, zmanjšajo število naključnih V/I operacij in povečajo hitrost dostopa do njih.

Pri vsakodnevnih opravilih je slika podobna:

Samo neoptimizirana osnova prejme koristi od SSD. Seveda lahko kupite SSD, vendar bi bilo veliko bolje razmišljati o pravočasnem vzdrževanju baz. Prav tako ne pozabite na defragmentacijo particije informacijske baze na strežniku.

Odjemalski diskovni podsistem in SSD

Analizirali smo vpliv SSD na hitrost lokalno nameščenega 1C v , veliko tega, kar je bilo povedano, velja tudi za delo v omrežnem načinu. Dejansko 1C precej aktivno uporablja diskovne vire, tudi za ozadja in načrtovana opravila. Na spodnji sliki lahko vidite, kako Računovodstvo 3.0 precej aktivno dostopa do diska približno 40 sekund po nalaganju.

Toda hkrati se je treba zavedati, da je za delovno postajo, kjer se aktivno delo izvaja z eno ali dvema informacijskima bazama, dovolj zmogljivosti običajnega trdega diska množične serije. Z nakupom SSD lahko pohitrimo nekatere procese, radikalnega pospeška pri vsakodnevnem delu pa ne boste opazili, saj bo na primer nalaganje omejeno s pasovno širino omrežja.

Počasen trdi disk lahko upočasni nekatere operacije, vendar sam po sebi ne more povzročiti upočasnitve programa.

Oven

Kljub dejstvu, da je RAM zdaj nespodobno poceni, številne delovne postaje še naprej delujejo s količino pomnilnika, ki je bila nameščena ob nakupu. Tu pa čakajo prve težave. Na podlagi dejstva, da povprečna "trojka" zahteva približno 500 MB pomnilnika, lahko domnevamo, da skupna količina RAM-a 1 GB za delo s programom ne bo dovolj.

Zmanjšali smo sistemski pomnilnik na 1 GB in zagnali dve informacijski bazi.

Na prvi pogled ni vse tako slabo, program je umiril svoje apetite in se popolnoma zadržal v razpoložljivem pomnilniku, a ne pozabimo, da se potreba po operativnih podatkih ni spremenila, kam so torej šli? Sprani na disk, predpomnilnik, zamenjava itd., Bistvo te operacije je, da se podatki, ki trenutno niso potrebni, pošljejo iz hitrega RAM-a, katerega količina ni dovolj, da upočasni disk.

Kam vodi? Poglejmo, kako se sistemski viri uporabljajo pri težkih operacijah, na primer, zaženimo skupinsko ponovno izvajanje v dveh bazah podatkov hkrati. Najprej na sistemu z 2 GB RAM-a:

Kot lahko vidite, sistem aktivno uporablja omrežje za sprejemanje podatkov in procesor za njihovo obdelavo, aktivnost diska je nepomembna, v procesu obdelave občasno raste, vendar ni omejevalni dejavnik.

Zdaj pa zmanjšajmo pomnilnik na 1 GB:

Razmere se korenito spreminjajo, glavna obremenitev zdaj pade na trdi disk, procesor in omrežje sta v mirovanju in čakata, da sistem prebere potrebne podatke z diska v pomnilnik in tja pošlje nepotrebne podatke.

Hkrati se je celo subjektivno delo z dvema odprtima bazama podatkov v sistemu z 1 GB pomnilnika izkazalo za izjemno neprijetno, imeniki in revije so se odprli s precejšnjo zamudo in aktivnim dostopom do diska. Na primer, odpiranje revije Prodaja blaga in storitev je trajalo približno 20 sekund in ga je ves ta čas spremljala visoka aktivnost diska (označeno z rdečo črto).

Da bi objektivno ocenili vpliv RAM-a na delovanje konfiguracij, ki temeljijo na upravljani aplikaciji, smo izvedli tri meritve: hitrost nalaganja prve baze, hitrost nalaganja druge baze in skupinsko ponovno objavo v eni od baz. Obe bazi sta popolnoma enaki in ustvarjeni s kopiranjem optimizirane baze. Rezultat je izražen v relativnih enotah.

Rezultat govori sam zase, če se čas nalaganja poveča za približno tretjino, kar je še vedno precej znosno, potem se čas za izvajanje operacij v bazi poveča trikrat, o kakšnem udobnem delu v takih razmerah ni treba govoriti. Mimogrede, tako je, ko lahko nakup SSD-ja izboljša situacijo, vendar je veliko lažje (in ceneje) obravnavati vzrok, ne posledice, in samo kupiti pravo količino RAM-a.

Pomanjkanje RAM-a je glavni razlog, zakaj je delo z novimi konfiguracijami 1C neprijetno. Upoštevati je treba minimalne primerne konfiguracije z 2 GB vgrajenega pomnilnika. Hkrati ne pozabite, da so bili v našem primeru ustvarjeni "toplinjaki" pogoji: čist sistem, zagnani so bili samo 1C in upravitelj opravil. V resničnem življenju so brskalnik, pisarniški paket, protivirusni program itd. običajno odprti na delujočem računalniku, zato izhajajte iz potrebe po 500 MB na bazo podatkov in nekaj rezerve, da med težkimi operacijami ne naletite na pomanjkanje spomina in drastičnega poslabšanja delovanja.

procesor

Centralno procesno enoto brez pretiravanja lahko imenujemo srce računalnika, saj je on tisti, ki na koncu obdeluje vse izračune. Da bi ocenili njegovo vlogo, smo izvedli še en sklop testov, enak kot za RAM, pri čemer smo zmanjšali število jeder, ki so na voljo virtualnemu stroju, z dveh na eno, medtem ko smo preizkus izvedli dvakrat z velikostmi pomnilnika 1 GB in 2 GB.

Rezultat se je izkazal za precej zanimivega in nepričakovanega, zmogljivejši procesor je precej učinkovito prevzel obremenitev ob pomanjkanju virov, sicer brez oprijemljivih koristi. 1C Enterprise (v datotečnem načinu) težko imenujemo aplikacija, ki aktivno uporablja procesorske vire, precej nezahtevna. In v težkih razmerah je procesor obremenjen ne toliko z izračunom podatkov same aplikacije, temveč s servisiranjem režijskih stroškov: dodatne I/O operacije itd.

zaključki

Torej, zakaj se 1C upočasni? Najprej je to pomanjkanje RAM-a, glavna obremenitev v tem primeru pade na trdi disk in procesor. In če ne blestijo z zmogljivostjo, kot je običajno v pisarniških konfiguracijah, potem dobimo situacijo, opisano na začetku članka - "dva" sta delovala dobro, "tri" pa brez sramu upočasni.

Drugo mesto je treba dati omrežni zmogljivosti, počasen kanal 100 Mbps lahko postane pravo ozko grlo, hkrati pa lahko način tankega odjemalca ohrani dokaj udobno raven delovanja tudi na počasnih kanalih.

Potem bodite pozorni na diskovnega, nakup SSD-ja verjetno ne bo dobra naložba, vendar zamenjava diska s sodobnejšim ne bo odveč. Razliko med generacijami trdih diskov je mogoče oceniti iz naslednjega gradiva: .

In končno procesor. Hitrejši model seveda ne bo odveč, vendar nima smisla povečevati njegove zmogljivosti, razen če se ta računalnik uporablja za težke operacije: paketna obdelava, težka poročila, zaključek meseca itd.

Upamo, da vam bo to gradivo pomagalo hitro razumeti vprašanje "zakaj se 1C upočasni" in ga rešiti najbolj učinkovito in brez dodatnih stroškov.

  • Oznake:

Za ogled omogočite JavaScript

Če se vam je kakšen program prenehal odzivati, se ne odziva niti na miško niti na tipkovnico in morda se je pojavil celo napis "program se ne odziva", se temu reče zamrznjen program.

Včasih se zgodi, da zamrznjen program ne moti vašega dela, včasih pa, nasprotno, zaradi enega zamrznjenega programa se lahko upočasni delo celotnega OS, v vsakem primeru je treba težavo rešiti, nekaj je treba narediti.

Česa ne storiti:

1) Izvlecite vtič iz vtičnice je največja napaka, ki jo lahko storite v tej situaciji. Nenaden izpad električne energije za računalnik je velik stres. Ta postavka vključuje tudi izklop računalnika z gumbom za zagon na sistemski enoti in izklop s pritiskom na stikalo za napajanje. Bistvo teh metod je enako, prekinete napajanje.

2) Pritisnite gumb za ponastavitev- ta gumb se nahaja na sprednji strani sistemske enote in se uporablja za prisilni ponovni zagon. Pritiskati je treba le v najbolj brezupnih situacijah, ko druge metode ne pomagajo.

3) Naredite dodatne poteze- če se je zaradi zamrznjenega programa vaš operacijski sistem začel močno upočasnjevati, bo kakršno koli nepotrebno dejanje le še poslabšalo situacijo. Z nepotrebnimi dejanji mislim na poskus ponovnega zagona zamrznjenega programa (tega v nobenem primeru ne smemo storiti), zagon drugih programov, odpiranje menija Start ali drugega menija. Če je situacija še posebej kritična, ne smete samo premikati miške, saj lahko kazalec zamrzne in težavo bo težje rešiti.

4) Počakajte zelo dolgo- praviloma je dovolj, da počakate pet minut, da razumete, da je program zamrznjen, če imate šibak računalnik, mu dajte 15 do 20 minut, običajno je neuporabno čakati naprej.

5) Postanite nervozni- brcanje sistemske enote z nogo ali udarjanje s tipkovnico po mizi ne bo pomagalo. Ta odstavek sem posebej napisal, ker iz neznanega razloga ljudje včasih to počnejo (verjetno naša preteklost vpliva, ko cevna televizija ni hotela delovati, običajno so jo udarili z roko in je pomagalo). Računalnik ni cevni televizor, ni ga treba premagati.

Kaj je treba narediti

Poskusite zapreti program, če klik na križec v zgornjem desnem kotu in kombinacija alt + f4 ne pomagata, potem morate storiti naslednje:

Pritisnite kombinacijo tipk, da pokličete upravitelja opravil:

Za Windows xp "Ctrl + Alt + Del".

Za Windows 7 "Ctrl + Shift + Esc".

V upravitelju opravil pojdite na zavihek »Aplikacije«, če je vaš program prikazan v razdelku opravil, ga izberite in kliknite gumb »Končaj opravilo«. Če takoj ne pride do reakcije, vam tega gumba ni treba znova pritisniti, le malo morate počakati. Čez nekaj časa se prikaže okno z opozorilom, da so podatki morda izgubljeni, zato boste morali klikniti gumb »Dokončaj zdaj«. Za primer si oglejte posnetek zaslona (dokončal sem delovni program, zato bo vaše besedilo drugačno, vendar je princip enak).

Če ta metoda ne uspe prekiniti programa, z desno miškino tipko kliknite obešen program in v spustnem meniju izberite "Pojdi na proces". Samodejno boste preusmerjeni na zavihek »Procesi«, želeni proces bo že izbran, samo kliknite gumb »Končaj proces«.

Če obešeni program ni prikazan na zavihku »Aplikacije«, morate iti na zavihek »Procesi«, poiskati proces obešenega programa in ga končati. Najlažje je iskati proces po imenu, lahko tudi po stopnji obremenjenosti procesorja, običajno je ta odstotek velik za obešeno aplikacijo.

Strokovnjakom za informatiko je dobro znano, da ima pritožba uporabnikov, ki »visijo 1C«, veliko razlogov. Za pravilno »diagnozo« – za identifikacijo in analizo problema – ga je treba reproducirati, saj je problem, ki ga ni mogoče reproducirati, praviloma skoraj nemogoče rešiti. Ko bomo razumeli simptome zamrzovanja 1C, bomo naredili prvi korak k učinkovitemu sistemu.

Zelo dolg zagon sistema

Dolg zagon težke konfiguracije pod enim uporabnikom prvič po dodajanju IB na seznam baz podatkov v računalniku je normalen pojav. Med prvim zagonom se konfiguracija shrani v predpomnilnik. Drugi in naslednji zagoni bi morali biti hitrejši.

Zagon sistema, ki traja dolgo časa, lahko nakazuje težave z arhitekturno izvedbo konfiguracije. Večino konfiguracije ogrodje prebere šele ob prvem dostopu do želenega metapodatkovnega objekta. Dolg začetek kaže na verjetnost uporabe velikega števila metapodatkovnih objektov (številni klici različnih skupnih modulov, obdelave itd.).

Upoštevati je treba, da se besedilo katerega koli modula prevede ob prvem dostopu. Tudi ta proces zahteva čas, kar je še posebej opazno, če je modulov veliko. Tako je problem počasnega zagona rešen s spremembo (optimizacijo) konfiguracije, katere namen je onemogočiti izvajanje vseh izbirnih algoritmov, ki se izvajajo ob zagonu sistema.

Obstaja možnost, da konfiguracija ob zagonu poskuša brati podatke iz interneta. Prav tako poveča čas zagona sistema.

Zelo dolgi odpiralni časi

Dolgo odpiranje obrazcev je lahko posledica:

  1. Veliko število kontrol na obrazcu - čas se porabi za ustvarjanje obrazca in povezovanje lokacije elementov obrazca;
  2. Izvajanje algoritmov med inicializacijo obrazca. Možno je, da se pri izdelavi obrazca preverijo nekateri pogoji in/ali se povezani objekti preberejo iz baze podatkov.

Prvo težavo "zdravimo" s poenostavitvijo obrazca. Na primer, nekatere kontrole je mogoče postaviti v ločene oblike, kar je lahko še bolj priročno za uporabnika. Na primer, če ima obrazec naslovno polje "Mesto", "Ulica", "Hiša" itd., potem je bolje, da naslov uredite v ločenem obrazcu.

Drugi problem je rešen z analizo dejanj, izvedenih med ustvarjanjem in odpiranjem obrazca, in z optimizacijo teh algoritmov. Morda so nekateri algoritmi že zastareli, nekatere pa je mogoče poenostaviti in optimizirati, na primer odpraviti ali zmanjšati dostop do podatkov v bazi podatkov.

Kot interaktivno dejanje upoštevajte poskus uporabnika, da izbere vrednost v elementu obrazca. Kot odgovor nanj sistem »o nečem razmišlja«. To se lahko zgodi zaradi naslednjih razlogov:

  1. Algoritmi, ki se izvajajo pri danem dejanju, preučijo ali izračunajo povezane podatke, ki vplivajo na način izbire vrednosti;
  2. Izbirni obrazec, ki se odpre za izbiro te vrednosti, prebere vse objekte iz baze podatkov, ko je inicializirana.

Za rešitev prve težave bi morali uporabiti "Performance Measurement", poiskati algoritme, ki zahtevajo veliko virov, in jih optimizirati.


Drugi problem je pogosto mogoče rešiti s preprosto analizo implementacije izbranega obrazca. Prepričati se morate na primer, da je lastnost dinamičnega seznama nastavljena na »Dinamično branje podatkov«, da je lastnost »Glavna tabela« pravilno nastavljena in da izvedba seznama ne uporablja algoritmov, ki očitno zahtevajo veliko virov.

Obstajajo tudi situacije, ko se ob odpiranju izbirnega obrazca preberejo kakršnikoli povezani podatki iz baze (npr. pri odpiranju izbirnega obrazca »Nomenklatura« se prebere stanje blaga v skladiščih). Običajno to ni najboljša rešitev. Branje povezanih podatkov je najbolje opraviti asinhrono, po odprtju obrazca. Bo tako pri uporabniku manj neprijetnosti, saj. po prikazu obrazca bo uporabnik nekaj časa opazoval odprt obrazec, ta čas pa lahko porabi za nalaganje povezanih podatkov.

Zelo počasen odziv na posodobitve

Eden od trivialnih simptomov pa lahko pove o nekaterih sistemskih težavah: posodobitev 1C zamrzne ob zagonu varnostnega kopiranja. To se zgodi predvsem pri posodabljanju prek interneta in najverjetneje pomeni, da konfiguracija že dolgo ni bila posodobljena in so izdaje, ki se vrstijo ena za drugo, povzročile zamrznitev. Takšno težavo lahko preprečite s pravočasno namestitvijo posodobitev, če pa nanjo naletite, lahko preprosto prekinete proces varnostnega kopiranja. Po zagonu konfiguratorja se baza podatkov začne s spremembami, opravljenimi v običajnem načinu.

Treba je opozoriti, da 1C 8.3 med posodobitvami najpogosteje zamrzne tudi zato, ker zahteva strojno opremo, ki zahteva več virov kot prejšnje različice platforme. Vredno je biti pozoren na količino RAM-a in ga po potrebi povečati - to bi načeloma moralo pomagati pri reševanju težave "1C zamrzne pri posodabljanju konfiguracije."

Dolgoročno evidentiranje predmetov/knjiženje dokumentov

V tem primeru je "foto obdelava" praktično izključena, saj so razlogi lahko zelo različni, začenši z veliko količino podatkov v objektu, konča s čakanjem na zaklepe.

Toda tudi v TEM primeru je mogoče začrtati smer analize.

Odsotnost bistvenih sprememb v času snemanja, zaradi ure v dnevu ali števila uporabnikov (po grobi, subjektivni oceni), kaže na težavo v kodi ali v obsegu podatkov objekta. Za analizo je smiselno uporabiti orodje »Performance Measurement«.

Kardinalna sprememba časa snemanja z nejasnimi odvisnostmi zahteva statistično analizo videza problema, tj. analiza uspešnosti. Najlažji način je analizirati uporabo dnevnika. Dodatna prednost pri tem je, da platforma 1C:Enterprise 8 podpira shranjevanje dnevniških podatkov v datoteko formata SQLite. To vam bo omogočilo uporabo poizvedb SQL za razčlenitev podatkov dnevnika. Iz podatkov dnevnika je povsem mogoče pridobiti čas pisanja objekta, glede na dejstvo, da se vsak zapis objekta izvaja v transakciji in ima vsaka transakcija svojo identifikacijsko številko.


Če je rezultat statistične analize pokazal, da je čas snemanja objekta odvisen od časa dneva in ne od števila uporabnikov, je treba analizirati obremenitev strežnika 1C in strežnika baze podatkov. Možno je, da se na strežniku izvajajo rutinski procesi, ki zasedajo nepotrebna sredstva.

Če je čas pisanja objektov odvisen od števila uporabnikov, so težave najverjetneje v kodi (morda čakanje na zaklepanja) ali v prepustnosti strojne opreme. Če jih želite rešiti, bi morali vključiti strokovnjaka s kompetenco "1C: Tehnološki strokovnjak", saj ni enotnih pravil za reševanje takšnega problema.

Ta članek obravnava glavne dejavnike: ko se 1C upočasni, 1C zamrzne in 1C deluje počasi. Podatki so bili pripravljeni na podlagi dolgoletnih izkušenj SoftPointa pri optimizaciji velikih IT sistemov, zgrajenih na kombinaciji 1C + MS SQL.

Za začetek velja opozoriti na mit, da 1C ni zasnovan za hkratno delovanje velikega števila uporabnikov, ki ga aktivno podpirajo uporabniki foruma, ki v teh objavah najdejo udobje in razlog, da pustijo vse tako, kot je. Z dovolj potrpežljivosti in ravni znanja lahko sistem pripeljete do poljubnega števila uporabnikov. Počasno delo in zmrzovanje 1C ne bo več problem.

Iz prakse: Najlažje je optimizirati 1C v7.7 (Optimizacija 1C 8.1, 1C 8.2, 1C 8.3 je težja naloga, saj je aplikacija sestavljena iz 3 povezav). Do 400 sočasnih uporabnikov je dokaj tipičen projekt. Do 1500 je že težko, zahteva trdo delo.

Drugi mit: če želite izboljšati delovanje 1C in se znebiti zamrznitev 1C, morate namestiti močnejši strežnik. Praviloma je v optimizacijskih projektih v 95% primerov mogoče doseči sprejemljivo zmogljivost bodisi brez nadgradnje sploh bodisi s posodobitvijo nepomembnega dela opreme, na primer z dodajanjem RAM-a. Ob tem velja opozoriti, da mora biti oprema še vedno strežniška, predvsem diskovni podsistem. Zastarel diskovni podsistem je le eden od razlogov, zakaj je 1C počasen.

Glavna omejitev pri delu z več uporabniki v 1C je mehanizem za blokiranje. Ključavnice v 1C in ne strežniška oprema običajno preprečujejo velikemu številu ljudi delo v bazi podatkov. Če želite premagati to težavo, se morate trdo potruditi in spremeniti logiko ključavnic v 1C - znižati jih iz tabele v vrstico za vrstico. Potem bo na primer držanje dokumenta blokiralo le enega in ne vseh dokumentov v sistemu.

Slika 1. Čakalna vrsta za blokiranje 1C v nadzornem sistemu PerfExpert s podatki o uporabnikih 1C, konfiguracijskem modulu in določeni vrstici kode v tem modulu.

Menjava mehanizma ključavnice 1C je zelo zapletena tehnologija. Ni vsakdo sposoben izpeljati takšnega trika in zanje je ostal le en način - optimizirati strukturo in pospešiti čas izvajanja operacij. Dejstvo je, da sta blokiranje v 1C in čas, potreben za dokončanje operacij, zelo medsebojno povezana kazalca. Na primer, če postopek objave dokumenta traja 15 sekund, je pri velikem številu uporabnikov zelo verjetno, da bo med objavo nekdo drug poskušal objaviti dokument in bo čakal v ključavnici. Če čas izvajanja zmanjšate na vsaj 1 sekundo, se bo blokiranje 1C za to operacijo znatno zmanjšalo.

Bolj nevarne z vidika blokiranja so skupinske obdelave, ki so lahko dolgotrajne v času izvajanja in hkrati povzročijo blokado 1C. Vsaka obdelava, ki spremeni podatke, kot je ponovno zaporedje ali paketna obdelava dokumentov, zaklene tabele in drugim uporabnikom prepreči objavo dokumentov. Seveda, hitreje ko se ti procesi izvajajo, krajši je čas blokade in uporabnikom je lažje delo.

Težka poročila, ki izvajajo le operacije branja, so lahko tudi nevarna v smislu zaklepanja, čeprav se zdi, da ne zaklepajo podatkov. Takšna poročila vplivajo na intenzivnost blokiranja v 1C in upočasnjujejo druge operacije v sistemu. To pomeni, da če je poročilo zelo težko in zavzame večino virov strežnika, se lahko izkaže, da so bile pred zagonom poročila iste izvedbe izvedene 1 sekundo, med izvajanjem poročila pa 15 sekund. Seveda se bo s povečanjem časa izvajanja operacij povečala tudi intenzivnost blokade.

Slika 2. Obremenitev na delujočem strežniku v kontekstu konfiguracijskih modulov, od vseh uporabnikov. Vsak modul ima svojo barvo. Obstaja očitno neravnovesje v obremenitvi, ki jo ustvari 1C.

Glavno pravilo pri optimizaciji je, da mora čas dokumenta trajati najmanj časa in izvajati le potrebne operacije. Na primer, registrski izračuni se pogosto uporabljajo pri obdelavi knjiženj brez podajanja pogojev filtriranja. V tem primeru morate za registre določiti filtre, ki vam omogočajo najboljšo selektivnost, ne da bi pozabili, da mora imeti register glede na pogoje filtriranja ustrezne indekse.

Poleg izvajanja težkih poročil lahko neoptimalne nastavitve MS SQL in MS Windows upočasnijo čas izvajanja operacij in s tem povečajo intenzivnost blokiranja 1C. To težavo najdemo pri 95% strank. Treba je opozoriti, da gre za strežnike resnih organizacij, v njihovo podporo in konfiguracijo pa so vključeni celi oddelki visokokvalificiranih skrbnikov.

Glavni razlog za nepravilno konfiguracijo strežnika je strah administratorjev, da bi kaj spremenili na delujočem strežniku in pravilo "Najboljši je sovražnik dobrega." Če skrbnik spremeni nastavitve strežnika in se začnejo težave, se bo vsa jeza oblasti zlila na malomarnega skrbnika. Zato se mu bolj splača pustiti vse tako, kot je, in ne narediti niti enega koraka brez ukaza nadrejenih, kot pa eksperimentirati na lastno odgovornost.

Drugi razlog je pomanjkanje jasnih informacij o problemih optimizacije omrežja. Obstaja veliko mnenj, ki si pogosto povsem nasprotujejo. Vsako mnenje, posvečeno optimizaciji, ima svoje nasprotnike in fanatike, ki ga bodo branili. Posledično internet in forumi zamenjujejo nastavitve strežnika namesto pomoči. V situaciji takšne negotovosti ima administrator še manj želje, da bi kaj spremenil na strežniku, ki vsaj nekako deluje.

Na prvi pogled je slika jasna - optimizirati morate vse, kar upočasnjuje strežnik 1C. Toda predstavljajmo si sebe na mestu takšnega optimizatorja - recimo, da imamo 1C 8.1 8.2 8.3 SCP in 50 uporabnikov dela hkrati. Nekega groznega dne se uporabniki začnejo pritoževati, da je 1C počasen, in to težavo moramo rešiti.

Najprej pogledamo, kaj se dogaja na strežniku - kar naenkrat se pojavi nekakšen neodvisen protivirusni program, ki opravi popoln pregled sistema. Pregled pokaže, da je vse spodobno - strežnik je obremenjen pod 100% in samo s procesom sqlservr.

Iz prakse: eden od nižjih skrbnikov je na lastno pobudo vklopil samodejno posodabljanje na strežniku, Windows in SQL sta bila veselo posodobljena, po posodobitvi pa se je začela velika upočasnitev dela uporabnikov 1C ali pa 1C preprosto zamrzne .

Naslednji korak je preverjanje, kateri programi nalagajo MS SQL. Pregled pokaže, da je obremenitev ustvarjena iz približno 20 povezav aplikacijskega strežnika.

Iz prakse: program, ki hitro posodablja podatke na spletnem mestu, se je zataknil in namesto na vsake 4 ure, je to počel brez ustavljanja, brez premorov, močno obremenil strežnik in blokiral podatke.

Nadaljnja analiza stanja se sooča z velikimi težavami. Ugotovili smo že, da obremenitev prihaja neposredno iz 1C, toda kako razumeti, kaj točno počnejo uporabniki? Ali vsaj kdo so. No, če je v organizaciji 10 uporabnikov 1C, se lahko preprosto sprehodite skozi njih in ugotovite, kaj zdaj počnejo, v našem primeru pa jih je petdeset in so razpršeni po več stavbah.

V primeru, ki ga obravnavamo, situacija še ni zapletena. In predstavljajte si, da upočasnitev ni bila danes, ampak včeraj. Danes se situacija ne ponavlja, vse je v redu, vendar morate ugotoviti, zakaj operaterji včeraj niso mogli delati (seveda so se pritoževali šele pred odhodom od doma, ker radi klepetajo cele dneve, ker nič ne deluje, jim je všeč več kot delati). Ta primer poudarja potrebo po sistemu beleženja strežnika, ki bo vedno hranil zgodovino glavnih parametrov strežnika in iz katerega je mogoče obnoviti zaporedje dogodkov.

Sistem beleženja je preprosto nepogrešljivo orodje pri optimizaciji sistema. Če temu dodamo še možnost vpogleda v trenutno stanje na spletu, dobimo sistem za spremljanje stanja strežnika. Vsak optimizacijski projekt se začne z zbiranjem statističnih podatkov o stanju strežnika za prepoznavanje ozkih grl.

Ko smo začeli delati na področju optimizacije, smo preizkusili veliko sistemov za nadzor strežnikov, žal nam ni uspelo najti nekaj, kar bi to težavo rešilo na pravi ravni, zato smo morali sistem ustvariti sami. Rezultat je bil edinstven izdelek PerfExpert, ki je omogočil avtomatizacijo in racionalizacijo procesov optimizacije IT sistemov. Program odlikuje tesna integracija z 1C, odsotnost kakršne koli opazne dodatne obremenitve in večkrat dokazana primernost za praktično uporabo v bojnih situacijah.

Če se vrnemo k našemu primeru, je najverjetnejši rezultat: Administrator pravi: "Programerji, ki so napisali konfiguracijo, so krivi", programerji odgovorijo - "Vse imamo dobro napisano - strežnik ne deluje dobro." In voziček, kot pravijo, je še vedno tam. Posledično se 1C upočasni, zamrzne ali deluje počasi.

V vsakem primeru za rešitev težav z zmogljivostjo 1C priporočamo, da najprej kupite in uporabite spremljanje učinkovitosti PerfExpert , vam bo to omogočilo, da sprejmete pravo upravljavsko odločitev in prihranite denar. Izdelek je primeren tako za majhne IS 1C:Enterprise - do 50 uporabnikov, kot za sisteme - od 1000 uporabnikov. Od julija 2015 spremljanje uspešnosti PerfExpert prejel certifikat 1C: Združljiv, preizkušen v Microsoft in pomaga pri reševanju težav z zmogljivostjo ne samo za sisteme 1C, ampak tudi za druge informacijske sisteme, ki temeljijo na MS SQL Server (Axapta, CRM Dynamics, Doc Vision in drugi).

Če so vam bile informacije všeč, so priporočeni naslednji koraki:

- Če se želite ukvarjati s tehničnimi težavami pri delovanju 1C (1C 7.7, 1C 8.1, 1C 8.2,1C 8.3) in drugih informacijskih sistemov, potem je za vas edinstven seznam tehničnih člankov v našem almanahu (zaklepi in zastoji, velika obremenitev procesorja in diska, vzdrževanje baze podatkov in uravnavanje indeksa so le majhen del tehničnega gradiva, ki ga boste našli tam).
.
- Če se želite o težavah z delovanjem pogovoriti z našim strokovnjakom ali naročiti rešitev za spremljanje delovanja PerfExpert nato pustite zahtevo in kontaktirali vas bomo v najkrajšem možnem času.


Ta članek vam ne bo pomagal znebiti zamrznitvenih programov. V njej bom opisal metodo, ki bo pomagala prekiniti zataknjen program Prav. Dejansko pogosto ljudje za dokončanje programa uporabljajo metode, ki so jim znane - to so vročični pritiski na tipke alt + f4 ali samo gumb esc in v večini primerov ne deluje. Nato morate pritisniti edini gumb, ki bo zagotovo pomagal - to je gumb na sistemski enoti ali prenosnem računalniku za izklop ali ponovni zagon. V tem primeru tvegate izgubo podatkov ne samo zamrznjenega programa, ampak tudi drugih, ki so odprti.

Za zamrznitev programa je lahko več razlogov:

  • Če imate 64-bitni sistem () in zaženete program, zasnovan za 32-bitne sisteme, potem se program v najboljšem primeru preprosto ne bo zagnal, v najslabšem primeru pa bo visel. Čeprav je tu odtenek - zgodi se, da takšni programi delujejo, vendar bodisi nepravilno bodisi sčasoma zamrznejo.
  • Imate premalo RAM-a za zagon.
  • Zagnanih imate preveč programov in procesov, ki že nalagajo sistem.
  • V ozadju se izvajajo programi, ki zavzamejo veliko sistemskih virov
  • Virusi
  • Tehnične težave (suha termalna pasta na procesorju, veliko prahu zamašenega, "šibka" strojna oprema itd.)

    In zdaj ste zagnali program in čakate na zagon. In ustavila se je pri zagonu in "molči". No, če se predvaja glasba v ozadju (v bistvu za igre), vam lahko da namig v obliki zanke. Seveda lahko počakate nekaj minut (ne več kot 5) v pričakovanju "čudeža" in da bo program obstal, če pa ne želite čakati in zagotovo veste, da je program zamrznjen, potem morate začeti zapiranje zamrznjenih programov.

    Da bi prekinite program, ki se ne odziva(namreč, hangup se tudi imenuje) morate poklicati upravitelja opravil. Seveda lahko uporabite ctrl+premik+esc, vendar priporočam uporabo bolj znane in učinkovite bližnjice na tipkovnici ctrl+alt+del.

    V operacijskem sistemu Windows 7 s pritiskom na te tipke odprete okno s petimi elementi, v katerih morate izbrati zadnjega.


    V zavihku Aplikacije iščemo zamrznjen program (običajno ima status Ne odziva), z desno miškino tipko kliknemo nanj in iz menija izberemo Pojdite na Proces:


    Odpre se zavihek Procesi z namenskim obešenim postopkom. Tukaj samo kliknite Konec procesa


    in se strinjate s sistemskim opozorilom

    Opomba:
    Seveda lahko v meniju Upravitelj opravil izberete ne Pojdite na Proces, A Končaj nalogo in to bo bolj "varčen" način, vendar včasih ne pomaga. In nekako sem se navadil takšne težave učinkovito reševati.

    Tako lahko »odstranite« zamrznjen program brez ponovnega zagona računalnika in ohranite druge delujoče programe nedotaknjene.

    Zgodi se, da raziskovalec se ne odziva. S tem mislim, da ste na primer odprli mapo na vašem računalniku ali celo samo Moj računalnik in sistem zmrzne (začne dolgo razmišljati). To se je zgodilo meni samemu.
    V tem primeru lahko pomaga tudi upravitelj opravil in zgoraj opisana metoda.

    Ampak tukaj pomembno zapomniti ena podrobnost: proces raziskovalca se imenuje explorer.exe in ko se konča, bodo vse mape v vašem računalniku zaprte. Ampak to je pol težave. Ko "ubijete" raziskovalca, bo izginila tudi nadzorna plošča z menijem Start. Zato Ne zaprite upravitelja opravil takoj!Če želite vrniti izgubljeno (z izjemo odprtih map), kliknite Datoteka -> Zaženi v njej


    in vnesite explorer.exe


    Seveda pritisnite OK in vse se bo vrnilo na svoje mesto.

    Tukaj je preprost način za odpravo težave Kaj storiti, če se program ne odziva ali zamrzne.