A vállalati kiszolgáló ügynök 1c szolgáltatásának automatikus újraindítása 8
A probléma megoldása az 1C vállalati kiszolgáló munkafolyamatait az operációs rendszer használatával.
Köztudott, hogy van egy következő probléma a működését a munkafolyamat 1C 8.1 rphost.exe kiszolgáló: jellemzői miatt állványok csatlakozó minden új ügyfél a munkafolyamatot, növeli a memória mérete által elfoglalt munkafolyamatot. Ugyanakkor, amikor az ügyfél leválasztásra kerül, a kapcsolat által elfoglalt hangerő nem szabadul fel. Emellett a programkód végrehajtásakor a munkafolyamat által elfoglalt memória mennyisége megnőhet. Ezt a viselkedést "Memory Leaks" vagy "Memory Leaks" néven hívják. Ennek eredményeképpen, ha a memória mennyisége a folyamat elhúzódik rphost.exe operedelennogo limit (esetemben ez volt> 1Gb), a munkafolyamat biztosan újraindul. Egyértelmű, hogy az ügyfelek kapcsolódik ez a folyamat, egyre az üzenetet, hogy a kapcsolatot a szerver hibás, nem működik tovább, van, hogy újra. A felhasználók számától és a futó munkafolyamatok számától függően ez a probléma változó gyakorisággal fordul elő. Az én esetemben - a felhasználók körülbelül 60 és egy munkafolyamat, hasonló helyzetben történt, akár hetente ötször. Ie sem az 1C rendszer stabil működéséről ebben az esetben nem beszélünk.
A probléma megoldásának első lépése a munkafolyamatok számának növelése volt. Azonban a probléma csak részben oldotta meg, a munkafolyamatok újraindítása ritkábban jelentkezett, de egyáltalán nem tűnt el.
A második és meglehetősen logikus lépés a folyamatok automatikus újraindítása a szerveren, ami valójában írni akarok.
Mivel a szolgáltatás 1C Enterprise Server Agent egy szabványos szolgáltatás a Windows-arzenál a szokásos módon, hogy hagyja abba, és indítsa el a szolgáltatásokat a parancssorba írja be a net stop és a net start. Ezek között csak annyi parancsot egy bat-fájlt, és konfigurálja az ütemező fut ütemezett bat-file, én meg egy újraindítás, naponta egyszer, este. Meg kell jegyezni, hogy ha újra a munkafolyamatokat a munkahelyen, mind kapcsolódnak a szerveren 1C vállalati ügyfelek lesz tiltva!
Emellett a stop parancs kissé eloszlatása és a szolgáltatás elindítása érdekében a jól ismert utility sleep.exe programot használjuk, amely könnyen megtalálható az interneten.
Példa a bat-file szöveg újraindítására1c.bat:
rem @ echo off
rem \\ ----- indítsa el a szkriptet, hogy állítsa le és indítsa el a kiszolgáló ügynököt 1C Enterprise ---- \\
set logfile = "stopstartlog.txt"
set timeout = 20
echo .ate %% time% >>% logfile%
net stop "1C: Enterprise 8.1 kiszolgálóügynök" >>% logfile%
c: \ scripts \ sleep% timeout%
echo .ate %% time% >>% logfile%
nettó indítás "1C: Enterprise 8.1 kiszolgálóügynök" >>% logfile%
c: \ scripts \ sleep% timeout%
rem \\ ----- végén a script megállítani és elindítani a szerver ügynök 1C Enterprise ---- \\
A használt változók és parancsok magyarázata:
* Logfile - stopstartlog.txt fájlt, amely rögzíti az eredményeket a csapatok található ugyanabban a könyvtárban, mint a denevér-fájl maga;
** időtúllépési idő másodpercben;
*** c: \ scripts - könyvtár, ahol a programot a sleep.exe, a bat-file és a log file-ot kell elhelyezni;
Ugyanabból a bat-fájlból a biztonsági mentési parancsfájlt az 1C Enterprise programmal azonnal elindíthatja, miután újraindította a folyamatokat. Ebben az esetben nem biztos, hogy ügyfelei csatlakoznak.
Szükséges megjegyzés: a felhasználónak, amely alatt a szolgáltatás újraindítási feladatának meg kell felelnie a kiszolgáló szolgáltatásainak leállításához és indításához.
- a fórum anyagai www.mista.ru;
- Dokumentáció az 1C platform Enterprise 8.1;
- Dokumentáció MS Windows termékekhez;