Virtlab:Komponenty/Rozdělení rezervačního a aktivačního serveru
Z VirtlabWiki
Verze z 19:16, 18. 10. 2007 Vav166 (Diskuse | příspěvky) ← Předchozí porovnání |
Verze z 13:40, 5. 11. 2007 Dol72 (Diskuse | příspěvky) Následující porovnání → |
||
Řádka 1: | Řádka 1: | ||
+ | |||
+ | '''AKTIVAČNÍ SERVER JE OD REV. 633 (4. LISTOPADU 2007) MRTEV''' | ||
+ | |||
Původní rezervační server v sobě obsahoval kód spouštěný jako dětský proces, který zajištoval aktivaci virtuálních topologií před začátkem jednotlivých rezervací. Rodičovský proces rezervačního serveru informoval svůj dětský (aktivační) proces o významých událostech pomocí signálů. Z důvodu větší modularity jsme provedli oddělení aktivačního kódu do samostatné komponenty, čímž znikl samostatně spouštěný aktivační server. Komunikace mezi rezervačním a aktivačním serverem nyní probíhá přes TCP. Způsob rozdělení a následnou komunikaci mezi servery popisuje obrázek: | Původní rezervační server v sobě obsahoval kód spouštěný jako dětský proces, který zajištoval aktivaci virtuálních topologií před začátkem jednotlivých rezervací. Rodičovský proces rezervačního serveru informoval svůj dětský (aktivační) proces o významých událostech pomocí signálů. Z důvodu větší modularity jsme provedli oddělení aktivačního kódu do samostatné komponenty, čímž znikl samostatně spouštěný aktivační server. Komunikace mezi rezervačním a aktivačním serverem nyní probíhá přes TCP. Způsob rozdělení a následnou komunikaci mezi servery popisuje obrázek: | ||
Verze z 13:40, 5. 11. 2007
AKTIVAČNÍ SERVER JE OD REV. 633 (4. LISTOPADU 2007) MRTEV
Původní rezervační server v sobě obsahoval kód spouštěný jako dětský proces, který zajištoval aktivaci virtuálních topologií před začátkem jednotlivých rezervací. Rodičovský proces rezervačního serveru informoval svůj dětský (aktivační) proces o významých událostech pomocí signálů. Z důvodu větší modularity jsme provedli oddělení aktivačního kódu do samostatné komponenty, čímž znikl samostatně spouštěný aktivační server. Komunikace mezi rezervačním a aktivačním serverem nyní probíhá přes TCP. Způsob rozdělení a následnou komunikaci mezi servery popisuje obrázek:
Komunikace mezi rezervačním a aktivačním serverem (vždy jen v rámci téže lokality) probíhá na portu 50002/TCP. Příkazy protokolu jsou popsány v komunikačním protokolu aktivačního serveru.
V případě nějaké změny (nové rezervace, zrušení rezervace) pošle rezervační server pokyn aktivačnímu serveru, aby se podíval do databáze a podle toho si nastavil alarm na čas nejbližší rezervace. Když rezervační server zpracovává novou rezervaci (resp. příkaz ATTACH), přepošle informaci o virtuální topologii požadované pro danou rezervaci aktivačním serveru, který si ji uloží do souboru (<resID>.dat). V případě, že pak nastane čas konkrétní rezervace, spustí aktivační server aktivační skript. V případě zrušení rezervace posílá rezervační server aktivačnímu serveru jako parametr příkazu delresid ResID zrušené rezervace, takže už si může vytvořený soubor smazat.
Za normálních okolností smaže soubor <resID>.dat aktivační skript po dokončení své činnosti.