Sr-11-wyk-1.0-Slajd10

From Studia Informatyczne

Przynależność do grup

Przynależność do grup


Organizacja procesów w grupy oznacza, że trzeba zorganizować system zarządzania nimi, umożliwiający dołączanie nowych procesów do grupy, odłączanie od grupy i rozsyłanie komunikatów do grupy. Najprostszym podejściem jest zastosowanie serwera grup (ang. group server ), który centralnie przechowywałby pełną informację o utworzonych w systemie grupach i przynależności poszczególnych procesów do grup. Rozwiązanie to jakkolwiek koncepcyjnie proste i łatwe do zrealizowania, obarczone jest typowymi wadami podejścia scentralizowanego, a więc m.in. wrażliwością na awarie centralnego serwera. W rozwiązaniu rozproszonym dołączanie do grupy może być zrealizowane poprzez rozesłanie do wszystkich procesów odpowiedniego komunikatu informującego o dołączeniu do grupy. Trudniejsza jest jednakże realizacja odłączenia od grupy, szczególnie jeżeli jest ono następstwem zatrzymania procesu. W takiej sytuacji pozostałe procesy muszą po pierwsze stwierdzić fakt awarii jednego z członków grupy, a po drugie muszą wspólnie podjąć decyzję o usunięciu takiego procesu z grupy.

Oddzielną kwestią jest synchronizacja operacji dołączania i odłączania procesów do/z grup z jednocześnie zachodzącą wymianą komunikatów. Proces, który dołącza się do grupy powinien zacząć odbierać wszystkie komunikaty kierowane do niego, a proces, który odłącza się od grupy powinien przestać otrzymywać tego typu komunikaty. Osiągnięcie tej synchronizacji jest możliwe poprzez wykorzystanie mechanizmów komunikacji grupowej do samego zarządzania członkowstwem.

Rozproszone zarządzanie grupą może doprowadzić do sytuacji, kiedy procesy stwierdzą, że grupa uległa tak rozlicznym awariom, że dalsze jej funkcjonowanie wymaga rekonstrukcji. Działanie takie może być zainicjowane przez wiele procesów jednocześnie, co wymaga dodatkowej koordynacji.


<< Poprzedni slajd | Spis treści | Następny slajd >>