Witam
W ramach mojej ciekawości zbudowałem sobie serwis Windows Communication Foundation (załóżmy, że chodzi o serwis z użytkownikami - rejestracji, dane, usuwanie, logowanie, zmiana danych itd.)
Serwis działa świetnie z pełnym rynsztunkiem (odczyt/zapis z bazy danych, cache, walidacja, autentykacja, autoryzacja i tak dalej).
Załóżmy, że celem jest postawienie kilku takich serwisów (w razie gdyby klientów było tak dużo, że jeden by sobie nie radził z przepustowością / wydajnością).
Ponieważ nigdy tego nie robiłem, widzę tutaj całą masę! problemów
-
rozumiem, że dobór serwisu przez klienta będzie przydzielany na podstawie obciążeń poszczególnych serwisów - to jest do zrealizowania
-
jak sobie radzić z cache'em (wiele instancji serwisów = wiele cache), jak zabezpieczyć się przed konfliktami.
-
jak sobie radzić z danymi? (zakładamy, że każdy serwis ma swoją osobną bazę). Jeśli wybór serwisu jest dokonywany na podstawie obciążenia - co z danymi?
-
czy serwisy muszą się komunikować między sobą? Jeśli tak, w jaki sposób?
Czy ktoś mógłby mi polecić jakiś artykuł dot. tematu (moje szukanie zdało się nieskuteczne).
Jedyny pomysł, jaki znalazłem, który wydaje się dość ciekawy to kolejka zadań. Jeden główny serwis (nazwijmy go Master) buduje całą kolejkę zadań, a poszczególny serwisy "Slave" pobierają zadania. W ten sposób można poradzić sobie z obciążeniem. Co o tym myślicie?
Za wszelką pomoc - z góry dzięki.