Udostępnij za pośrednictwem


Przykład seryjnej konfliktów oparte na subskrypcji typu i priorytety przypisane

Aby zrozumieć, jak rozwiązać konflikty zgodnie z przypisanych wartości priorytetu i czy subskrypcji jest serwer lub subskrypcja kliencka, rozważmy poniższy przykład opisuje serię aktualizacje do wiersza nad kilka synchronizacje korespondencji seryjnej.

Poniżej przedstawiono wartości początkowe priorytet dla witryn cztery podstawowe seryjnej topologia replikacji (jednego wydawcy, dwa subskrybentów z subskrypcjami serwera i jeden abonenta z subskrypcja klient).

Witryny

Typ

Wartość priorytetu

A

Publisher

100.00

B

Server Subscription

75.00 (przypisana)

W

Server Subscription

50,00 (przypisana)

D

Client Subscription

0,00 (domyślny)

Faza 1: Wartości początkowe

Początkowo lokacji A ( Wydawca) tworzy wersja jednego z wierszy zawierających wartość = "Nebrasca", który jest replikowany do witryny B, C i d podczas następnej synchronizacji korespondencji seryjnej.Po synchronizacji Oto wartości wiersza.

Witryny

Wartość priorytetu

Wartość wiersza

(Wydawca)

100.00

Nebrasca

B (serwer subskrypcji)

75.00

Nebrasca

C (serwer subskrypcji)

50.00

Nebrasca

D (subskrypcji klienta)

0.00

Nebrasca

Faza 2: Wydawcai abonenta z subskrypcji serwera wiersz obu Update

Aktualizacje witryny a wartość wiersza Texas i witryną b aktualizuje wartość wiersza New Jersey.Podczas następnej synchronizacji korespondencji seryjnej, występuje konflikt między lokacjami a i B.Witryna a wins konfliktu.Wartość zwycięzcy konfliktu z witryny a są propagowane do lokacji B, C i D.

Witryny

Wartość priorytetu

Wartość wiersza

(Wydawca)

100.00

Kontroler Texas

B (serwer subskrypcji)

75.00

Kontroler Texas

C (serwer subskrypcji)

50.00

Kontroler Texas

D (subskrypcji klienta)

0.00

Kontroler Texas

Faza 3: Wiele zmian w tym samym wierszu

Załóżmy, że witryny c aktualizuje wiersz (zmienia on Karolina Północna) i synchronizuje z Wydawca.Nie jest to konflikt ponieważ c już pomyślnie scalone ostatniej aktualizacji od A (wartość wiersza = "Texas" pomyślnie scalone).Następnie Załóżmy B witrynie aktualizacje wiersza (zmienia on Idaho).

Witryny

Wartość priorytetu

Wartość wiersza

(Wydawca)

100.00

Karolina Północna

B (serwer subskrypcji)

75.00

Idaho

C (serwer subskrypcji)

50.00

Karolina Północna

D (subskrypcji klienta)

0.00

Kontroler Texas

Podczas synchronizacji z programem Wydawca lokacji b istnieje konflikt aktualizacji.Ponieważ b i c są subskrypcje serwera i priorytet b jest większa niż C, lokacji b wins konfliktu.Po dwie lokacje są również scalane, wartość b są propagowane do innych subskrybentów.

Witryny

Wartość priorytetu

Wartość wiersza

(Wydawca)

100.00

Idaho

B (serwer subskrypcji)

75.00

Idaho

C (serwer subskrypcji)

50.00

Idaho

D (subskrypcji klienta)

0.00

Idaho

Faza 4: Subskrybenci z serwera i klienta subskrypcje obu aktualizacji wiersza

Załóżmy, że witryny d aktualizuje wiersz (zmienia on nowy Meksyk) i synchronizuje z Wydawca.Następnie Załóżmy B witrynie aktualizacje wiersza (zmienia on Kalifornia).

Witryny

Wartość priorytetu

Wartość wiersza

(Wydawca)

100.00

Nowy Meksyk

B (serwer subskrypcji)

75.00

Kalifornia

C (serwer subskrypcji)

50.00

Idaho

D (subskrypcji klienta)

0.00

Nowy Meksyk

Podczas synchronizacji z programem Wydawca lokacji b istnieje konflikt aktualizacji.W przeciwieństwie do poprzedniego przykładu ponieważ ma d subskrypcja kliencka, przyjmuje wartość priorytetu Wydawca (witryna A) podczas synchronizacji.Ponieważ priorytet a jest większa niż B, B utraci konfliktu; Wartość wprowadzona początkowo do d wins.(Miał B subskrybent synchronizacji z A, zanim został d subskrybenta, lokacji b byłoby wygrałeś konflikt.) Witryny wygrywasz konflikt d opiera się na Wydawca nie dokonano zmian lub odebranych zmienione od wersja aktualizacji w witrynie d wiersz był ostatnio synchronizowany.Jeśli każdemu subskrybentowi w subskrypcja serwerowa lub innych abonenta z subskrypcja kliencka synchronizuje najpierw regułę najwyższy priorytet lub "pierwszy do serwera WINS Wydawca" następuje.)

Przedstawione tutaj wartości końcowej po zsynchronizowaniu wszystkich witryn.

Witryny

Wartość priorytetu

Wartość wiersza

(Wydawca)

100.00

Nowy Meksyk

B (serwer subskrypcji)

75.00

Nowy Meksyk

C (serwer subskrypcji

50.00

Nowy Meksyk

D (subskrypcji klienta)

0.00

Nowy Meksyk

Wartość zamówienia i priorytet synchronizacji określenia wyniku konfliktów, gdy mieszanie subskrypcje serwera i klient w tym samym poziom w topologii sieci.Ten ostatni zestaw aktualizacji pokazują, dlaczego muszą być wykonywane ostrożnie.Mimo że abonent miał wartość priorytetu najniższy trzech abonentów, go wygrane konflikt, ponieważ on zsynchronizowany z programem Wydawca (zakładając zatem wartość priorytetu Wydawca 100,00) pierwszy.Witryny C (subskrypcja serwerowa z wartość priorytetu 50,00) wprowadził Nowy Meksyk zamiast witryny D, lokacji B (subskrypcja serwerowa z wartość priorytetu 75.00) czy wygrał konflikt i wynik byłby w Kalifornii.