Server de aplicații deschise - apel de procedură la distanță

Serverul de aplicații OpenEdge Application Server permite sistemelor externe să apeleze de la distanță procedurile ABL (4GL).

Server de aplicații deschise - apel de procedură la distanță

Toate setările serverului de aplicații OpenEdge sunt listate în fișierul $ DLC / properties / ubroker.proprties.





Acest fișier are o structură ramificată imbricată din secțiuni cu setări generale la cele private.

Editarea acestui fișier de configurare este posibilă utilizând:

După efectuarea modificărilor în fișierul de configurare, se recomandă să verificați dacă acestea sunt corecte cu ajutorul utilitarelor:







  • nsconfig - utilitar pentru verificarea corectitudinii setărilor NameServer;
  • asconfig - utilitar pentru verificarea corectitudinii setărilor App-broker;
  • wsconfig - utilitar pentru verificarea corectitudinii setărilor brokerului WebSpeed.

Această comandă afișează informații din fișierul de configurare $ DLC / properties / ubroker.proprties by NameServer - NS1

Această comandă afișează informații din fișierul de configurare $ DLC / properties / ubroker.proprties de către broker - myBroker1


ADMIN SERVER

Rularea AdminServer'a implementată de comanda:

În mod implicit, AdminServer rulează pe portul 20931. Puteți schimba portul specificând opțiunea -port.

Verificați starea AdminServer.

Dacă serverul rulează cu succes, rezultatul va fi ceva de genul:

Dacă serverul nu rulează:


NAME SERVER

NumeServer comanda de pornire:

Opțiunea NameServer stop:

În cazul lansării cu succes a NameServer și înregistrarea pe aceasta a brokerilor:

Dacă este pornit NameServer, dar niciunul dintre brokerii înregistrați pe acesta nu rulează.

Secțiunea [NameServer] conține setări generale pentru toate serverele NameServer. Fiecare parametru poate fi înlocuit în setările fiecărui server individual.

După secțiunea [NameServer], creați secțiunea serverului NS1:

autoStart - specifică lansarea automată a NameServer când AdminServer este pornit. Se poate lua următoarele valori: 1 - NameServer este pornit automat și 0 - nu se efectuează pornirea automată;

srvrLogFile - fișierul log al lui NameServer;

portNumber este portul NameServer. Port pentru conectarea clienților la AppServer (portul implicit 5162).

NameServer este un proces Java care asculta portul UDP la care sosesc cererile clientului. Pentru informații despre acest proces, de exemplu, utilizați utilitarul lsof:

Brokerul gestionează agenții care execută cereri de clienți. Secțiunea [UBroker] din fișierul de configurare conține setări generale pentru toate tipurile de brokeri. Fiecare broker poate fi înregistrat numai pe un nume NameServer. Secțiunea [UBroker.AS] - conține setări generale pentru toți App-brokers.

Echipa de lansare a brokerului:

Comanda de oprire a brokerului:

În cazul lansării cu succes a brokerului:

Dacă Brokerul nu rulează:


După secțiunea [UBroker.AS], creați secțiunea cu setările myBroker1.

Fiecare broker trebuie să aibă un uuid unic, pentru generarea căruia este necesară executarea comenzii:

autoStart - specifică lansarea automată a brokerului când AdminServer este pornit. Se pot lua următoarele valori: 1 - Funcționarea r'a este pornită automat și 0 - nu se efectuează pornirea automată.

srvrLogFile - fișier log-server;

brokerLogFile - fișier jurnal al brokerului;

brkrLoggingLevel - nivel de înregistrare broker; 0 - înregistrarea nu este efectuată; 1 - sunt înregistrate numai erorile; 2 - bază;

brkrLogAppend - poate lua valoarea 0 și 1: 0 - de fiecare dată când brokerul este creat, este creat un fișier jurnal separat; 1 - logarea produce un singur fișier jurnal;

brkrLogThreshold - dimensiunea maximă a fișierului de jurnal în octeți. Aceasta poate avea o valoare de la 500000 - 2147483647. Atunci când se ajunge la un fișier jurnal cu dimensiunea specificată, este creat un nou fișier jurnal cu indexul de la 1 la 999 999.

controllingNameServer este identificatorul NameServer;

OperatingMode - modul de funcționare a brokerului.

Există 4 moduri de funcționare a brokerului: Stat fără stat, Reset de stat, Stare-conștient, fără stat.

Revizie de stat - Fiecare client conectat este alocat propriului său agent de broker între cei disponibili. Atunci când acest agent blocat dat solicitările clienților pentru alte conexiuni client până la deconetează client. După ce clientul este deconectat, contextul agentului este resetat. Pe de o parte, clientul este întotdeauna agent disponibil în mod unic pentru a trata cererile sale, pe de altă parte, în cazul în care de către client nici o cerere vin, agentul rămâne blocat și poate fi o situație în care toți agenții disponibile sunt clienții ocupat și noi nu pot avea acces la ele, chiar dacă clienții blocați fiind, de fapt, liberi și nu vor procesa solicitări din partea clienților care le-au blocat. Acest mod este modul implicit.

-Stat conștient - Acest mod este similar cu modul de resetare de stat, dar, în schimb, agentul de context nu este resetat după deconecteaza client, și rămâne disponibil pentru a fi conectat la client.

Apatrid - Un client conectat stabilește o legătură cu un broker, care la rândul său distribuie cererile sale agenților liberi. La executarea cererii clientului, agentul este eliberat și pus la dispoziția altor clienți.

Fără stat - un client conectat nu stabilește o legătură tare cu un anumit broker. Cererile clientului sunt executate de primul broker gratuit. Când interogarea este executată, starea agentului este resetată.

appserviceNameList - lista de servere acceptate de broker;

mediu - secțiune care descrie variabilele de mediu ale brokerului;

portNumber - port de broker;

maxClientInstance - Numărul maxim de conexiuni ale clienților;

initialSrvrInstance - numărul de agenți lansați la începutul brokerului;

MinSrvrInstance - număr minim de agenți conectați;

maxSrvrInstance - numărul maxim de agenți de lansat;

srvrMinPort - portul minim al agenților. valoarea acceptabilă este 1024 - 65535;

srvrMaxPort - portul maxim de agenți. valoarea acceptabilă este 1024 - 65535;

autoTrimTimeout - timpul de expirare a brokerului neocupat în câteva secunde. Dacă valoarea este 0, nu se efectuează deconectarea agentului neocupat.

La pornirea brokerul este conectat la agenții initialSrvrInstance de bază, al căror număr este în creștere de cereri concurente client poate fi crescută până la numărul maxSrvrInstance. Agenții rula pe porturile srvrMinPort pe srvrMaxPort în trepte de câte 1. Dacă specificați maxSrvrInstance ar trebui să fie ghidate de următoarele: maxSrvrInstance. srvrMaxPort - srvrMinPort.

Întrucât cererile sunt încheiate, agenții nerevendicați vor fi deconectați după expirarea timpului de expirare a intervalului autoTrimTimeout. Odată cu terminarea completă a cererilor către OpenEdge Application Server. Numărul de agenți conectați este redus la minSrvrInstance.

requestTimeout - timeout exprimat în secunde, care va fi păstrat în așteptare pentru agentul gratuit la cererea clientului. Dacă agentul nu este disponibil după ora specificată, clientul va primi mesajul "nu există servere disponibile"

srvrStartupParam - setări pentru conectarea agenților la baza de date sau fișierul pf al parametrilor;

PROPATH - lista cu directoare care conțin fișiere r;

userName - numele de utilizator în numele căruia este lansat brokerul. Dacă utilizatorul nu este specificat, în mod implicit brokerul va fi lansat în numele aceluiași utilizator din care este lansat AdminServer;

parola - parola utilizatorului specificată în parametrul userName;

descriere - descrierea brokerului.

Când configurați OpenEdge Application Server, puteți specifica un număr de proceduri care vor fi solicitate atunci când apare un anumit eveniment.

Astfel de evenimente sunt:

  • Agenți de pornire și oprire;
  • Conectarea și deconectarea clientului;
  • Apelarea procedurii de la distanță de către client și încheierea procedurii de la distanță.


PROCEDURA STARTUP

Numele STARTUP al procedurii care este sunat imediat după pornirea agentului este specificat în parametrul srvrStartupProc. Procedura se numește PERSISTENT și se șterge înainte ca agentul să fie oprit.

Această procedură trebuie să conțină o descriere a unui tip de parametru de tip CHARACTER.

Când apelați o procedură, valoarea parametrului procedurii de intrare este trecută de la parametrul srvrStartupProcParam. Dacă valoarea srvrStartupProcParam nu este specificată, atunci se ia automat o "valoare necunoscută".

Dacă apare o eroare în timpul procedurii de apel, serverul de aplicații începe să se oprească și agenții se opresc.

Nu este posibil să specificați procedura STARTUP pentru modul de resetare de stare a serverului de aplicații.


PROCEDURA DE ÎNCĂRCARE

Numele parametrului SHUTDOWN al procedurii numite înainte de oprirea agenților este specificat în parametrul srvrShutdownProc. Această procedură este o procedură fără parametri. Dacă apare o eroare în timpul apelului acestei proceduri, este pur și simplu ignorată și agentul se oprește. Această procedură se numește NON-PERSISTENT.

Nu este posibilă specificarea procedurii SHUTDOWN pentru modul de resetare de stare a serverului de aplicații OpenEdge.


CONECTARE PROCEDURĂ

Procedura CONNECT este apelată atunci când conexiunea client este stabilită cu OpenEdge Application Server. până la acceptarea cererii clientului. Această procedură poate efectua autentificarea clientului conectat la serverul de aplicații. În cazul în care nu treceți autentificarea, respingeți conexiunea acestui client.

Numele CONNECT al procedurii este specificat în parametrul srvrConnectProc al fișierului de configurare a aplicației-server

Procedura CONNECT trebuie să conțină trei parametri de intrare CHARACTER type:

Valoarea acestor parametri este trecută de client în metoda CONNECT () atunci când se conectează la serverul de aplicații ". Dacă aceste valori nu sunt specificate de client în metoda CONNECT (), se vor trece în procedura "valori necunoscute".

Nu puteți specifica procedura CONNECT pentru modul de resetare de stare a serverului de aplicații. deoarece în acest mod nu este posibil.

În cazul modului apatrid de funcționare AppServer, apelul pentru procedura CONNECT este efectuat ca NON-PERSISTENT. Pentru toate celelalte moduri ale AppServer'a ca PERSISTENT.


DISCONECTARE PROCEDURĂ

Procedura DISCONNECT este declanșată atunci când clientul cere o oprire, dar înainte de ao deconecta de fapt.

Numele CONNECT al procedurii este specificat în parametrul srvrDisconnProc al fișierului de configurare Server App.

Este imposibil să specificați procedura DISCONNECT pentru modul de resetare de stare a serverului de aplicații.

Procedura este denumită NON-PERSISTENT pentru toate modurile de funcționare disponibile ale serverului de aplicații


SIGURANȚĂ

Pentru a limita procedurile disponibile pentru un apel la distanță prin OpenEdge Application Server, utilizați metoda sesiunii - EXPORT (). Această metodă stabilește lista procedurilor disponibile pentru procedură ca conținut pentru agenții Serverului App. Ca parametru al acestei metode, se transmite o listă de proceduri în format CAN-DO disponibilă pentru un apel la distanță. Apelarea acestei metode fără un parametru elimină lista procedurilor disponibile.

Specificitatea setării unei liste de proceduri disponibile pentru diferitele moduri de operare ale OpenEdge Application Server.







Trimiteți-le prietenilor: