1c lubab serveris silumise. Silumisserveri protseduurid (1Cv82)

1C arendaja ülesanne ei ole mitte ainult koodi kirjutamine, vaid ka vigade jälgimine ja parandamine, optimaalse käsu täitmise algoritmi loomine ja töö kiiruse optimeerimine, see tähendab silumine. Seda on keeruline teha ilma serveriprotseduuride sisseehitatud siluri funktsionaalsust kasutamata.

Esialgu on silumisrežiim 1C serverites keelatud, nii et arendaja peab koodi põhjalikuks kontrollimiseks seadetega lihtsaid manipuleerimisi tegema.

Silumisrežiimi lubamine serveris platvormi 1C versiooni 8.2 ja uuemate versioonide jaoks

Silumise lubamise algoritm on üsna lihtne. See ei eelda põhjalikke teadmisi operatsioonisüsteemi arhitektuuri ja 1C halduse kohta. Siiski tasub siiski olla väga ettevaatlik, sest silumistööd tehakse otse serveris ja administraatori õigustega. Seetõttu, kui teil pole põhjalikke teadmisi, järgige rangelt ilma improvisatsioonita toimingute algoritmi:

  • Peatage serverihalduri kaudu teenus 1C:Enterprise Server Agent. Kui seadistamine toimub tootmisserveris, peaksite eelnevalt hoolitsema 1C kasutajate puudumise eest andmebaasis;
  • Käivitage süsteemi registriredaktor, klõpsates "Start" - "Käivita" või kiirklahvi "Win" + "R". Sisestage avanevas aknas rida "regedit";
  • Registrist peate leidma üksuse;

  • Leidke parameetrite hulgast “ImagePath” ja muutke seda, lisades olemasolevale väärtusele “-debug” koos tühikuga;
  • Käivitage serverihalduri kaudu peatatud teenus - "1C: Enterprise Server Agent".

Silumisrežiimi lubamine serveris 1C versiooni 8.1 jaoks

Kui peate platvormil 8.1 lubama silumisrežiimi, jääb toimingute algoritm praktiliselt muutumatuks. Ainus muudatus on tee parameetri "ImagePath" asukoht. Versioonis 8.1 asub see jaotises.

1C arendajad soovitavad lubada silumisrežiimi ainult testserverite jaoks, kus koodi tuleks siluda. Selle soovituse põhjuseks on mõju jõudlusele, mis ilmneb siis, kui serveris on lubatud silumine. Kui teil on palju kasutajaid või serveri võimsus jätab soovida, võtke seda nõuannet hoolikalt, et silumisel ei oleks negatiivseid tagajärgi.

Rakendatud versioonis 8.3.7.1759.

Oleme silumismehhanismi oluliselt ümber kujundanud. Sellel oli mitu põhjust. Esiteks tahtsime anda teile võimaluse siluda kõiki täna saadaolevaid rakendusi. Teiseks nõudis eelmine siluri arhitektuur muudatusi, et käia kaasas praeguste suundumustega ja kohandada tulevast arengut. Kolmandaks oli vaja universaalset silumisliidest, millega mitte ainult 1C:Enterprise konfiguraator, vaid ka .

Peamised eelised

Et saaksite ette kujutada meie tehtud muudatuste ulatust, loetleme lühidalt uue mehhanismi peamised eelised.

HTTP silumine

Eelmine silumismehhanism põhines asjaolul, et 1C:Enterprise konfiguraatoris rakendatud silur suhtles otseselt silumisüksustega (kliendi- ja serverirakendused). See interaktsioon viidi läbi TCP/IP-protokolli abil.

1C:Enterprise rakenduste Internetis ilmumisega ja eriti mobiilirakenduste tulekuga on see lähenemine aga muutunud piirangute ja ebamugavuste allikaks. TCP/IP-protokoll ei võimalda siluril alati silutavate üksusteni jõuda. Lõppude lõpuks võivad need asuda väljaspool kohalikku võrku, milles silur töötab.

Seetõttu valisime uues mehhanismis transpordiprotokolliks “üldlevinud” HTTP-protokolli, mida, muide, kasutavad ka kliendirakendused infoandmebaasidega ühenduse loomiseks.

Kaasaegne silumisarhitektuur

Eelmise silumismehhanismi eripäraks oli vajadus luua ühendus teabebaasiga konfiguraatori abil. Selle tulemusena oli arendaja silumisel täielik juurdepääs kõikidele haldusfunktsioonidele.

Uus silumismehhanism ei nõua enam ühendust silutava teabebaasiga. Peamine asi, mida silur nüüd vajab, on sama konfiguratsioon, mis töötab klientide jaoks. Selle hankimiseks pole vaja silutava teabebaasiga ühendust luua. Saate selle laadida näiteks failist.

Mobiilirakenduste silumine

Tänu HTTP-protokolli kasutamisele on saanud võimalikuks mobiiliplatvormi käivitatavate rakenduste silumine. Lisaks saate siluda mis tahes kontekste: klient, server ja ka taustatööd.

Nüüd saate silumise ajal muuta mis tahes kirjutatavate muutujate väärtusi. Kohalike muutujate kiireks vaatamiseks ja muutmiseks oleme rakendanud eraldi akna. Ja siluri kuvatavate avaldiste arvutamine toimub nüüd asünkroonses režiimis.

Silumine arendustööriistades

Uue silumismehhanismi loomisel rakendasime sellega suhtlemiseks uue universaalse tarkvaraliidese. Seda liidest kasutab 1C:Enterprise konfiguraator ja sama liidest kasutab nüüd ka uus arenduskeskkond. Seega on rakenduses töötades nüüd saadaval kõik silumisvõimalused.

Silumisprotsessi arhitektuur

Uus silumisarhitektuur näeb välja selline:

Silumine hõlmab silurit, silumisüksusi ja uut elementi - silumisserver.

Siluri ja silumisüksuste vahel puudub otsene teabeedastus. Kogu suhtlus korraldatakse silumisserveri kaudu. See on mehhanismi põhielement. Silumisserveril on sõnumijärjekord, mille kaudu siluri- ja silumisüksused edastavad teavet üksteisele.

Nii silur ise kui ka silumisüksused suhtlevad silumisserveriga HTTP kaudu. Seega pole nüüd vahet, kus need silumisüksused asuvad.

Silumisserveriga suhtlemise algatavad siluja ja silumisüksused. Selleks korraldatakse lisaühendusi. Nende peamine eesmärk on teada saada, kas nende jaoks on silumisserveris teavet ilmunud. Ja kui see ilmub, hankige see teave.

Seega on interaktsioon ühepoolne. Teavet edastatakse pidevalt silumisserverist silurisse ja silumisobjektidesse.

Infobaaside tuvastamine

Eelmises mehhanismis kasutati teabebaaside tuvastamiseks ühendusstringi. See lahendus tekitas mõnel juhul raskusi silumisüksuste ja konfiguraatori sobitamisel. Sest esiteks oli tõstutundlik ja teiseks genereeris platvorm mõne konteksti silumisel ühenduse stringi automaatselt. Ja see ei langenud alati kokku sellega, mille määrasite konfiguraatoris teabebaasi ühendamisel. Selliste olukordade leidmine ja parandamine muutis silumisprotsessi keeruliseks.

Uues mehhanismis saime lahti ühendusstringist. Nüüd kasutame infobaasi identifikaator. Failide teabebaasis luuakse selline identifikaator kliendiühenduse esmakordsel loomisel. Serveri infobaasis kasutatakse sellise identifikaatorina klastris olevat infobaasi registreerimise identifikaatorit.

Tore lisapunkt on siinkohal see, et oleme praeguseks platvormil alles jätnud vana silumismehhanismi (tulevikus võidakse see välistada). Ja saate seda kasutada, kui soovite või kui vaja. Seega oleme muutnud vana mehhanismi ja nüüd kasutab see ka infobaasi identifikaatorit, mitte ühendusstringi.

Tüüpilised silumise stsenaariumid

Rakenduse arendaja vaatenurgast ei ole tüüpilised silumisstsenaariumid muutunud. Ainus oluline erinevus on see, et uus silumismehhanism peab olema lubatud. Sest vaikimisi on see keelatud.

Sellest hoolimata on mõttekas tutvuda sellega, mis juhtub nüüd, kui käivitate silumise. Sest see võib teile mõne mittestandardse tööstsenaariumi korral kasulik olla.

Faili valik

Enne failiversioonis silumise alustamist peate konfiguraatori sätetes märkima, et soovite kasutada uut silumismehhanismi - " HTTP silumine».

Sel juhul palub konfiguraator teil automaatselt kasutada kohalikku silumisserverit. Peate sellega nõustuma ja konfiguraatori taaskäivitama.

Teie määratud silumismeetod salvestatakse konfiguraatori seansside vahel, kuid see salvestatakse teabebaaside konteksti. Seetõttu peate mõne teise teabebaasi jaoks selle uuesti lubama.

Nüüd käivitab platvorm konfiguraatori käivitamisel või taaskäivitamisel automaatselt silumisserveri. See on eraldi dbgs.exe rakendus. Näete seda tegumihalduris.

Parameeter ownerPID määrab selle silumisserverit omava rakenduse identifikaatori. Sel juhul on see konfiguraator 1C: Enterprise.

Nüüd, kui käivitate konfiguraatorist 1C:Enterprise silumiseansi, loob see automaatselt ühenduse silumisserveriga ja konfiguraatoris näete ühendatud silumisüksusi.

Kui seanss 1C: Enterprise käivitati ilma silumiseta, saate selle, nagu varemgi, siluriga ühendada. Alles nüüd peate määrama silumisserveri aadressi:

Selle aadressi leiate silumisüksuste seadetest:

Mitme failiandmebaasiga korraga töötamisega on seotud üks ebatavaline punkt. Failiversioonis käivitab iga http-silumisega konfiguraator erinevates portides oma silumisserveri koopia:

Seega, kui teil on korraga avatud mitu konfiguraatorit, peate kliendirakenduse siluriga ühendamiseks valima õige.

Klient-server valik

Enne kliendi-serveri versioonis silumise alustamist peate nagu varemgi käivitama 1C:Enterprise serveri silumisrežiimis, kuid määrake, et silumiseks kasutatakse uut HTTP mehhanismi. Näiteks nii:

ragent.exe -debug -http

Kui server sel viisil käivitatakse, käivitatakse ka silumisserver.

Parameeter ownerPID näitab 1C:Enterprise klastrihalduri identifikaatorit.

Nüüd peate konfiguraatori sätetes, nagu ka failiandmebaasi puhul, märkima, et soovite kasutada uut silumismehhanismi - " HTTP silumine».

Sel juhul palub konfiguraator automaatselt kasutada klastri silumisserverit, mitte kohalikku serverit. Peate sellega nõustuma ja konfiguraatori taaskäivitama.

Silumisüksuste ühendamine

Kui käivitate konfiguraatorist silumisseansse, ühendavad rakendused automaatselt silumisüksused (nii kliendi kui ka serveri) silumisserveriga.

Samal ajal, nagu varemgi, on teil võimalus seadistada konfiguraator nii, et see ühendaks automaatselt silumisüksused, olenemata nende käivitamise viisist. Nüüd on need võimalused muutunud palju rikkalikumaks.

Esiteks pakub platvorm teile nüüd kõiki võimalikke silumisüksusi, mille vahel valida.

Ja teiseks on ilmunud veel üks, peenem seadistusviis. See on eelnevalt loodud valikute kasutamine.

Selliseid valikuid saate kasutada nii silumisüksuste ühendamisel kui ka saadaolevate silumisüksuste vaatamiseks.

Valikus saate lisaks silumisüksustele määrata konkreetsed kasutajad, kelle seansid teile huvi pakuvad, ja andmete eraldamise korral märkida ka teabebaasi ala, mida silutakse.

Muutujate, objekti omaduste muutmine ja avaldiste asünkroonne hindamine

Uus silumismehhanism võimaldab teil silumise ajal muutuvaid väärtusi muuta. Eelmises mehhanismis sellist võimalust ei olnud.

Kohalike muutujate mugavaks vaatamiseks ja muutmiseks, mis tundub olevat kõige tavalisem ülesanne, oleme rakendanud " Kohalikud muutujad».

Väliselt on see väga sarnane “Tuletabeliga”, millega olete harjunud. Kuid esiteks on see aken juba automaatselt täidetud kõigi kohalike muutujatega ja teiseks saate nüüd muutujate väärtusi muuta.

Primitiivsete tüüpide väärtusi saate muuta otse lahtris " Tähendus»:

Ja muude väärtuste muutmiseks võite kasutada avaldise sisestusakent:

Hea boonus on see, et kontekstuaalne kohtspikker töötab selles aknas täielikult.

Täpselt samal viisil saate muuta mis tahes (mitte ainult kohalike) muutujate ja kirjutatavate omaduste väärtusi. Avaldise arvutamise aknas (mida kutsutakse Shift+F9 käsuga) saate muuta muutujate väärtusi nii lahtris "Väärtus" kui ka eraldi dialoogis.

Muide, avaldise arvutamine ise toimub nüüd asünkroonselt. See tähendab, et konfiguraator tellib silumisüksuse arvutamise. Ja mõnda aega oodatakse seda arvutust serveris. Kui arvutus on lõpetatud, saadetakse tulemused kohe konfiguraatorile. Kui arvutus toimub pikka aega, jõuavad nende arvutuste tulemused asünkroonselt konfiguraatorisse hiljem. See lähenemisviis võimaldab teil mitte oodata konfiguraatoris pikki arvutusi ja jätkata tööd.

See artikkel räägib sellest, kuidas lubada silumine 1C-serveris 8.1, 8.2 ja 8.3 Windowsi ja Ubuntu operatsioonisüsteemides.

Lisaks märgin, et see artikkel on osa väikesest artiklite seeriast 1C silumise kohta:

  • Kuidas lubada silumine 1C serveris

Lubage Windowsis 1C serveris silumine

Käivitage registriredaktor, käivitades käsu regedit (kasutades Win+R või Start->Run).

Lisateavet HTTP-silumise ja silumisserveri kohta saate lugeda sarja järgmisest artiklist.

Lubage Ubuntu 1C serveris silumine

Esmalt installime serveri:

sudo teenuse srv1cv83 peatus

Pärast seda avage superkasutajana fail /etc/init.d/srv1cv83 ja leidke sellest rida:

Ja toome selle järgmisele vormile:

Seejärel käivitame serveri uuesti:

sudo teenuse srv1cv83 algus

Kliendi masina konfiguraatoris minge jaotisse "Seaded" -> "Käivita 1C:Enterprise" -> "Täpsemalt" ja lubage kaks üksust:

  • "Määra silumise lubamise režiim"
  • "Alusta silumist käivitamisel"

1C-serveri installimise kohta Ubuntu 16.04/18.04 saate lugeda.

See on kõik, loodan, et see artikkel oli teile kasulik. Lubage mul teile meelde tuletada ka teisi 1C-s silumist käsitlevaid artikleid; nende lingid leiate selle artikli algusest.

Kuidas alustada silumist 1C serveris...

Vaikimisi töötab 1C:Enterprise klient-server arhitektuuri kasutamisel 1C koodi silumisrežiim ainult kliendi poolel. Serveri protseduurid ja funktsioonid pole kliendi masinale nähtavad.

1C serveris silumise lubamiseks peate tegema järgmised toimingud:

1. Otsige üles ja peatage teenusehalduris teenus “1C:Enterprise Server Agent 8.3” (versioonile 8.3).

2. Avage süsteemi registriredaktor. Võite kasutada käsurida või menüü Start - Run... tööriista ja käsku regedit.

3. Leidke filiaal registrist:

  • Versiooni 1C 8.1 jaoks
  • Versiooni 1C 8.2 jaoks
  • Versiooni 1C 8.3 jaoks

4. Muutke atribuuti ImagePath, lisage rea lõppu käsk "-debug". Saate järgmise atribuudirea: "C:\Program Files (x86)\1cv8\8.3.6.2152\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C: \Program Files (x86)\1cv8\srvinfo" – silumine

Pärast seda saab 1C-serveri koodi siluriga turvaliselt kontrollida ja katkestuspunkte seadistada kõikjal, kus vaja.

18.10.2016

Silumine 1C serveris (8.2, 8.3...)

Kui 1C andmebaas töötab klient-serveri versioonis, on serveri poolel koodi silumisrežiim keelatud. Seetõttu ei ole võimalik samm-sammult näha, mis funktsiooni või protseduuri täitmisel juhtub. Serveripoolse silumise lubamiseks peate järgima mõnda lihtsat sammu.

Lubage silumine serveris 1C:Enterprise 8.2, 8.3

Esimene asi, mida peate tegema, on 1C: Enterprise serveriteenuse peatamine. Minge "Start - Run" (või klaviatuuri otsetee "Windows + R"), kirjutage "services.msc" (loomulikult peate administraatorilt avama Windowsi teenuste haldamise)

Pärast peatamist avage Windowsi registriredaktor ("Start - Run" (või kiirklahv "Windows + R") ja kirjutage "regedit") ning leidke nimega haru. "" või "" olenevalt platvormi versioonist


Oleme huvitatud registrivõtmest nimega "ImagePath". Lisage võtme väärtuse lõppu "-debug". See tähendab, et 1C serveri poolel on silumisrežiim aktiveeritud.
Oli: "C:\Program Files\1cv8\8.3.6.2530\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files\1cv8\srvinfo"
Sai: "C:\Program Files\1cv8\8.3.6.2530\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files\1cv8\srvinfo" -silumine


Salvestage ja käivitage teenus 1C. Kõik on valmis! Head silumist!