KamoCRM

Odczyty masowe obecności i nieświeżoo-obecność przestaną za pomocą Redis KEYS

FixMediaService
Szycy
23 września 2026 10:41 UTC
Autor
Kamo
Pochęt się
e696226

getBulkPresence/getBulkLastSeen ubiegły KEYS PRESENCE:?/PRESENCE_LAST_SEEN: Rozmowa - uderzając w każdy uchwyt i ostrość na kartce obecności - a przeczesanie z lat 30 Jeszcze dwa razy więcej, wszystkie przeciwko temu samemu Redis, który organizuje każdą sesję. Klucze Spacery i blokuje całą przestrzeń kluczy; w skali platformy, która jest pełną Redis Zatrzymaj się na ścieżce prośby, a nie naorg. Każdy z trzech obecnie odczytuje utrzymywany indeks zamiast skanowania: - PRESENCE_ORG_INDEX:?orgId - a ZSET of memberId strzelony przez ostatnie bicie serca, Napisane przez uchwytConnect / uchwytHeartbeat, usunięte przez uchwytDisconnect's Usuń grację-okres. getBulkPresence odczytuje go bezpośrednio (org scoping jest przez Budowa teraz, a nie czek na kandydata na orgifika; członek zamiatania w połowie Czyta to z ZRANGEBYSCORE, aby znaleźć tylko wiarygodnych kandydatów. - PRESENCE_ACTIVE_ORGS - zestaw identyfikatorów org, dzięki czemu zamiatanie może odwiedzić every org's Indeks bez odkrywania identyfikatorów org poprzez skanowanie danych członków. - - Podpowracanie SET getBulkLastSeen the W ten sam sposób. Nie zamiatane, tak samo jak wcześniej: własny 400-dniowy TTL pojedynczego klucza Nadal jest to, co to przechodzi na emeryturę. - PRESENCE_PUBLIC_INDEX - jeden płaski ZSET dla sesji dla odwiedzających (bez org concept, Nic nie czyta ich luzem przez org), karmiąc publiczną połowę zamiatania. Każdy klucz do hash (PRESENCE:, PRESENCE_PUBLIC:, PRESENCE_LAST_SEEN:) jest Niezmienione - te same pola, te same TTL - i pozostaje pojedynczym źródłem prawdy dla Własny stan; indeks tylko wąsek, na który id id są oglądane; lektura lub Zamiatanie nadal sprawdza prawdziwy hash przed zaufaniem lub raportowaniem czegokolwiek, i Samotwarde (upuszcza wpis indeks), jeśli hash już go przeżył. A A) (u) (ang.) Odżył bicie serca (klucz wygasł w połowie sesji) nadal nie może przypisać org - Tę samą lukę, jaką miał stary skan KEYS+HGET(”orgId), ponieważ ta ścieżka nigdy nie została napisana pole albo; tylko widok org-bulk jest dotknięty, niezmieniony od czasu do czasu. Zawarte przez PresenceBulkLookupTest (nowy) i PresenceSweepTest (przepisany dla Nowy mechanizm odkrywania, te same szpilki behawioralne, co wcześniej plus "nigdy" Rozmowy KEYS" check), sprawdzane mutacja: upuszczanie indeksu w uchwyt Connect, samo-aldrowa gałąź w getBulkPresence i haskKey Guard W zamiataniu każdy obraca się na czerwono konkretne twierdzenie.

Wszystkie zmiany

Jak to, co widzisz żeglugę?

Wszystko to pojawia się w twoim miejscu pracy na własną rękę. Zacznij od bezpłatnego planu i przeczytaj tę stronę ponownie w miesiącu.

Start Free ForeverZobacz ceny