Zależności rekordów
Infrastruktura równorzędna nie gwarantuje kolejności odbierania i przetwarzania rekordów. Jeśli aplikacja ma zależności rekordów, co oznacza, że przetwarzanie lub walidacja jednego rekordu opiera się na innym rekordzie, aplikacja musi mieć możliwość obsługi sytuacji, gdy rekordy mogą być odbierane w dowolnej i nieprzewidywalnej kolejności. Na przykład aplikacja czatu może mieć dwa typy rekordów: rekord zawierający informacje o określonym użytkowniku oraz rekord zawierający komunikat czatu, który odwołuje się do rekordu użytkownika.
Aplikacja musi być w stanie obsłużyć sytuację, gdy zostanie odebrany rekord wiadomości czatu przed rekordem użytkownika dla wiadomości czatu. Jednym ze sposobów obsługi sytuacji jest oczekiwanie na rekord użytkownika przy użyciu listy rezerwowejlub pamięci podręcznej i czasomierza. Aplikacja może okresowo badać każdy rekord na liście lub w pamięci podręcznej, a następnie obsługiwać sytuację, gdy zostanie odebrany wymagany rekord użytkownika.
Aby obsłużyć zależności rekordów, dobrze zaprojektowana aplikacja składa się z następujących elementów:
- Zawsze sprawdza zależności rekordów przed wykonaniem akcji.
- Przewiduje warunki, które mogą wystąpić, gdy rekordy są odbierane w nieoczekiwanej kolejności, a następnie obsługuje sytuację.