namai - Atsigavimas
Dabartiniam ryšiui seansas nepriskirtas. Mes pašaliname vartotojus iš serverio informacijos bazės

Įdiegta 8.3.9.1818 versijoje.

8.3.9 versijoje atlikome daug užduočių, skirtų optimizuoti įvairius platformos mechanizmus. Čia norėčiau pakalbėti apie vieną iš jų. Tai pagerina žiniatinklio paslaugų našumą.

Pakartotinis seansų naudojimas

Žiniatinklio paslaugų neveiksmingumas atsirado dėl to, kad kiekvienas skambutis į žiniatinklio paslaugą turėjo didelių išlaidų kuriant ir nutraukiant seansą. Be to, kuriant kiekvieną kartą buvo vykdoma SetSessionParameters() tvarkyklė, kuri įprastoje konfigūracijoje gali būti gana „sunki“.

Be to, buvo funkcinis trūkumas. Interneto paslaugos buvo be pilietybės. Tai neleido mums įgyvendinti logikos, kuri naudojo būsenos išlikimą tarp žiniatinklio paslaugų skambučių.

8.3.9 versijoje patobulinome žiniatinklio paslaugų mechanizmą (SOAP paslaugos, HTTP paslaugos, OData paslaugos). Dėl to jų produktyvumas išaugo maždaug 10 kartų.

Atlikome standartinės įmonės apskaitos konfigūracijos bandymus. Į jį įtraukėme HTTP paslaugas, kurios atlieka pasirinkimą iš rangovų katalogo. Testą sudarė klientas 100 iš eilės skambučių į paslaugą. Senuoju darbo režimu tam prireikė 29,9 s. Naujais darbo režimais vidutiniškai 3 s.

Šie rezultatai buvo pasiekti dėl to, kad įgyvendinome dvi skirtingas strategijas, kad užtikrintume pakartotinį seanso naudojimą:

  • Automatinis pakartotinis seansų naudojimas iš baseino;
  • Sesijų valdymas naudojant HTTP antraštes.

Naudojant automatinį pakartotinį seanso naudojimą, klientas negali kontroliuoti seansų skaičiaus ir jų trukmės. Jai tiesiog automatiškai priskiriama sesija iš esamo seanso telkinio. Ši strategija tinka didelės apkrovos viešosioms paslaugoms, kuriomis naudojasi klientai, atliekantys įprastines operacijas ir turintys vieningas privilegijas.

Pavyzdžiui, tai gali būti nuotolinių mažmeninės prekybos vietų prekybos veiklos automatizavimas, numatant didžiausios serverio apkrovos laikotarpius. Apdorojimui bus skirtas reikiamas seansų skaičius. Jie bus baigti, kai apkrova nukris.

Kitas pavyzdys yra failų gavimas / įdėjimas į dokumentų srauto konfigūraciją naudojant http paslaugas. Tokioms operacijoms gali būti naudojamas tas pats specialus vartotojas.

Rankinio seanso valdymo strategija reiškia, kad klientas savarankiškai valdo seansų skaičių ir jų trukmę. Ši strategija geriausiai tinka labai integruotoms sistemoms vienoje organizacijoje. Galite įdiegti savo algoritmą, kuris valdys seansų trukmę ir jų skaičių.

Valdikliai

Konfigūracijos objektų medyje galite nustatyti poreikį naudoti vieną ar kitą strategiją ir, jei reikia, ją nepaisyti publikacijos faile default.vrd. Konfigūracijos objektų medyje mes įtraukėme dvi naujas žiniatinklio tarnybos ir HTTP paslaugų objektų ypatybes:

  • Seanso pakartotinis naudojimas gali turėti šias reikšmes: Naudoti automatiškai, Naudoti arba Nenaudoti. Vertė Use Automatic įgalina automatinį pakartotinį seansų iš telkinio naudojimą, o vertė Use – seansų valdymą naudojant HTTP antraštes.
  • Ypatybėje SessionLifeTime galite nurodyti, kiek sekundžių sesija bus neaktyvi, kol platforma ją automatiškai nutrauks.

Jei kliento programa nutrūksta neįprastai (nutrūksta ryšys arba uždaromas naršyklės langas), 1C: Enterprise 8 kliento licencijos gali būti užblokuotos.

Užrakintas kliento licencijas galite atleisti iš naujo paleisdami kompiuterį.

Jei kliento programa nutrūksta neįprastai, seansas tęsiamas dar 20 minučių. Po to ankstesnėse versijose 8.3.5 sesija buvo ištrinta. Nuo 8.3.5 versijos seansas užmiega miego būsenoje pagal numatytuosius nustatymus ir saugomas kitą dieną. Miego sesija neužima 1C: Enterprise 8 kliento licencijos.

8.3.5 versijoje seanso miego laikas ir nenaudojamo miego seanso ištrynimo laikas gali būti keičiami naudojant specialią programą arba 1C Configurator dialogo lange Administravimas/Infobase Settings nustatant rekomenduojamus miego seanso parametrus:

  • laikas užmigti pasyvioms sesijoms - 300
  • miego seansų pabaigos laikas - 10

Beje, per serverio konsolę seansų skirtuke visada galite matyti, kas miega, o kas yra aktyvus. Atitinkamame stulpelyje „Miegas“ yra ženklas Taip/Ne.

Paprastai (pagal 1C įmonės versiją) galite baigti darbą žiniatinklio kliente naudodami komandą „Failas“ - „Išeiti“. Nuo 8.3.8 versijos programos antraštėje, šalia mygtuko, buvo pridėta išjungimo komanda Apie programą. Jis rodomas kaip hipersaitas su esamo vartotojo vardu. Paspaudus ant hipersaito atsidaro dialogo langas su vartotojo vardu ir komanda Norėdami baigti darbą.

Platforma kas 5 sekundes siunčia ping klientui į 1C serverį (matomi 4 baitų paketai). Remdamasis „pingais“, serveris stebi ryšio su kliento programa vientisumą. Pingų nebuvimą maždaug 2 minutes serveris interpretuoja kaip ryšio gedimą.

Skirtumas tarp seanso ir ryšio sąvokų 1C:Enterprise 8

Ko išmoksite iš šio straipsnio?

  • Teisingas atsakymas į vieną populiariausių klausimų išlaikant 1C: ekspertas
  • Ryšių ir 1C seansų paskirtis ir ypatybės
  • Kas saugo seanso duomenis?

Kuo skiriasi sesija ir ryšys? Šis iš pažiūros paprastas 1C:Expert egzamino klausimas suklaidina daugelį. Nepaisant nemažos programavimo patirties, ne kiekvienas specialistas gali suformuluoti aiškų ir teisingą atsakymą.

Šiame straipsnyje pateiksime išsamią šios problemos analizę. Pirma, pažvelkime atskirai į seanso ir ryšio sąvokas 1C: Enterprise. Atkreipkite dėmesį, kad informacija yra svarbi platformos 8.2.x ir 8.3.x versijoms.

1C sesija

Pažiūrėkime į administratoriaus vadovą. Jame seanso sąvoka apibrėžiama taip:

Sesija apibrėžia aktyvų informacijos bazės vartotoją ir šio vartotojo valdymo srautą.

Galima sakyti, kad serverių klasteris nemato vartotojų, o mato seansus ir seansų duomenis. Iš esmės klasterio valdymo pulte nėra skyriaus „Vartotojai“; klasteris seansus supranta kaip vartotojus.

Tai patvirtina vaizdinį elemento „Seansai“ vaizdą - piktograma rodoma vartotojų pavidalu.

Reikėtų paaiškinti, kad aktyvus vartotojas nebūtinai reiškia kliento ryšį, tai taip pat gali būti:

  • 1C:Enterprise kliento programos egzempliorius
  • žiniatinklio programos egzempliorius, kuriame vykdomas žiniatinklio klientas
  • išorinio ryšio egzempliorius, gautas iš V83.COMConnector objekto
  • 1 fono darbo pavyzdys
  • 1 skambutis į žiniatinklio paslaugą

Sesijos duomenys

Panagrinėkime seanso duomenų sąvoką. Sesijoje pateikiama tam tikra informacija, pavyzdžiui:

  • informacinės bazės pavadinimas
  • seanso numeris
  • autentifikuoto informacijos bazės vartotojo vardas
  • Sąsajos kalba
  • seanso parametrų reikšmės
  • laikinas saugojimas
  • seanso statistika
  • tvarkomų prašymų formų informaciją
  • kai kurie vidiniai platformos duomenys

Ši informacija vadinama seanso duomenimis. Be to, kiekvienas aktyvus vartotojas turi savo seanso duomenis ir tai aktualu tik jo darbo metu. Jei vartotojas palieka duomenų bazę (baigia seansą), jo seanso duomenys ištrinami.

Seanso duomenys saugomi serverių klasteryje, už tai atsakingas klasterio valdytojas, tam ir yra skirta seanso duomenų paslauga. Kad viskas vyktų greičiau, seanso duomenys saugomi darbuotojų procesų ir storų klientų talpykloje.

Kai serverio klasteris bus paleistas iš naujo, seanso duomenys bus išsaugoti. Jei aktyvus vartotojas per 20 minučių neskambino į klasterį ir seansas nepriskirtas ryšiui, sesija ištrinama kartu su jo duomenimis.

Norėdami palaikyti seansą, plonasis klientas ir žiniatinklio klientas pasiekia klasterį bent kartą per 10 minučių.

Jungtis 1C

Dabar supraskime ryšio sąvoką. Dar kartą pažvelkime į administratoriaus vadovą:

Ryšys yra prieiga prie seansų prie 1C:Enterprise serverių klasterio, turi ribotą ryšio duomenų rinkinį ir nėra identifikuojamas su aktyviu vartotoju.

Kitaip tariant, ryšys leidžia seansui pasiekti klasterį. Tokiu atveju jungčių skaičius yra ribojamas, o kai tik jų nebereikia seansui, jis grąžinamas į ryšių telkinį.

Jei sesija nepasiekia klasterio, tai yra, vartotojas yra neaktyvus, ryšys jam nebus priskirtas. Taigi sesija gali egzistuoti be ryšio.

Reikėtų pažymėti, kad seanso duomenys yra saugomi serveryje, todėl jei ryšys nutrūksta mažiau nei 20 minučių, tai neturės įtakos seansui, nes ryšys yra tik prieigos priemonė.

Pavyzdžiui, netyčia ištraukus tinklo laidą, vartotojas negaus klaidos pranešimo, jei kabelį prijungs per 20 minučių. Tokiu atveju seansui bus priskirtas naujas ryšys ir jis tęsis. Vartotojas net nesuvoks problemos, išskyrus galbūt nedidelį užšalimą.

Ryšiai taip pat naudojami bendrauti tarp klasterio procesų, ty darbuotojų procesai (rphost) bendrauja su klasterio valdytoju (rmngr procesas) naudodami ryšius, o ne seansus.

Ryšių ir seansų skirtumai

Norėdami apibūdinti pagrindinį šių sąvokų skirtumą, pateiksime analogiją.

Tarkime, kad seansas yra keleivis, o ryšys yra taksi. Kai keleivis turi grįžti namo (seansui reikia prisijungti prie serverio), jis išsikviečia taksi (seansui priskiriamas ryšys iš ryšio baseino).

Jei, pasiekęs namus, keleivis vėl nori vykti į darbą, bet taksi jau išvažiavo (prisijungus ryšys nutrūko), tada keleivis išsikviečia naują taksi ir važiuoja savo reikalais (priskiriamas naujas susisiekimas sesija).

Ši analogija aiškiai parodo, kad seansas ir ryšys nėra tas pats dalykas ir seansas gali lengvai išgyventi ryšio pertrauką.

Andrejus Burmistrovas

Norint atlikti įprastą 1C:Enterprise 8 informacijos bazės priežiūrą, dažnai reikia gauti išskirtinę prieigą prie duomenų bazės. Pavyzdžiui, norėdami sukurti atsarginę duomenų bazės kopiją arba atlikti įprastinę DBVS serverio priežiūrą (pakartotinis indeksavimas ir t. t.), turite atjungti visas aktyvias sesijas.

Pažvelkime į paprastą būdą atjungti vartotojus nuo informacijos bazės naudojant standartines 1C:Enterprise serverio funkcijas.

Standartinis funkcionalumas

Leiskite man iš karto rezervuoti, kad kalbėsime apie 1C:Enterprise 8 kliento-serverio versiją. Norėdami išjungti seansus, eikime į serverio administravimo konsolę. Ten rasime reikiamą informacijos bazę sąraše:

Eidami į informacijos saugos ypatybes, nustatykite parinktį „Seanso pradžios blokavimas įjungtas“. Tokiu atveju gali tekti įvesti infobase administratoriaus paskyros prisijungimo vardą/slaptažodį.

Nepamirškite nustatyti seanso užrakto laikotarpio. Taip pat turėtumėte užtikrinti, kad visos foninės užduotys būtų sustabdytos, kol seansai blokuojami. Tai atliekama naudojant parinktį „Įjungtas įprastų užduočių blokavimas“.

Jei reikia, galite nustatyti pranešimo tekstą vartotojams, kuriems jie bus informuoti likus 5 minutėms iki seansų blokavimo, taip pat leidimo kodą patekti į infobazę seanso blokavimo laikotarpiu.

Leidimo kodas gali būti naudojamas prisijungiant prie informacijos bazės ir atliekant įprastinę priežiūrą, kai kitos sesijos yra neaktyvios. Prisijungiant prie duomenų bazės naudojant parametrus reikia įvesti leidimo kodą. Pavyzdžiui, taip atrodys serveriui perduotas parametras, jei leidimo kodas yra „123456“.

Tokiu būdu prisijungę prie duomenų bazės gausime išskirtinę prieigą prie informacinės bazės. Kiti užsiėmimai negalės prisijungti prie mūsų.

Pranešimas vartotojui, kad seansai blokuojami, atrodo taip (priklausomai nuo administratoriaus įvesto pranešimo). Jis pasirodo kas minutę likus 5 minutėms iki blokavimo laikotarpio.

Kai prasideda seanso blokavimo laikotarpis, pirmiausia pasirodo pranešimas:

Po to sesija baigiasi.

Aktyvios sesijos taip pat gali būti išjungtos pašalinus jas iš aktyvių seansų sąrašo. Šis veiksmas kartais būtinas norint nutraukti pakabinamus seansus.

Praktiškai apie vartotojų atsijungimus geriau informuoti iš anksto, kad būtų sumažinta rizika prarasti vartotojų įvestus, bet dar neišsaugotus duomenis.



 


Skaityti:



Kas yra pristatymo tipas

Kas yra pristatymo tipas

Pagrindiniai WINDOWS objektai ir valdymo metodai Modern Windows yra operacinė sistema, valdanti asmeninio kompiuterio veikimą. Windows...

Ar virusas yra gyvas ar negyvas padaras?

Ar virusas yra gyvas ar negyvas padaras?

Argumentai, kad jie yra gyvi: Molekulinė organizacija yra tokia pati kaip gyvo organizmo ląstelės: NK, baltymai, membranos. Molekuliniu požiūriu =...

Valdžios ir valdymo organų informacinės paramos teisinis pagrindas

Valdžios ir valdymo organų informacinės paramos teisinis pagrindas

- 58.47 Kb ĮVADAS ……………………………………………………………………………. 3 1 INFORMACINĖ INSTITUCIJŲ PARAMA…………………5 1.1. Temos aprašymas...

Kaip sužinoti organizacijos kodą konsoliduotame registre

Kaip sužinoti organizacijos kodą konsoliduotame registre

11.1.ED „Biudžeto sudarymo dalyvių sąrašas“ ED „Biudžeto sudarymo dalyvių sąrašas“ (toliau ED „BBP sąrašas“) perduodamas iš federalinės apygardos, institucijos...

tiekimo vaizdas RSS