effect-patterns-error-handling-resilience
Wzorce obsługi błędów w Effect-TS z exponential backoff i retry'ami
Instalacja
Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.
Instalacja
O skillu
Umiejętność dostarcza gotowe wzorce Effect-TS do budowania odpornych systemów obsługi błędów. Dowiesz się, jak implementować exponential backoff z jitterem, aby inteligentnie ponawiać nieudane żądania do API bez przeciążania usług. Idealna dla programistów pracujących z Effect-TS, którzy chcą zastosować best practices w obsłudze błędów i resiliency w aplikacjach produkcyjnych. Zawiera rzeczywiste przykłady kodu i wyjaśnienia strategii retry'ów na poziomie intermediate.
Jak używać
Zainstaluj umiejętność w swoim projekcie Effect-TS, dodając ją do konfiguracji Claude plugin'a lub importując wzorce z repozytorium autora.
Przeczytaj dokumentację wzorca Scheduling Pattern 2, który pokazuje implementację exponential backoff z jitterem – to główny wzorzec zawarty w umiejętności.
Skopiuj strukturę BackoffConfig do swojego projektu, definiując parametry: baseDelayMs (opóźnienie początkowe), maxDelayMs (maksymalne opóźnienie) oraz maxRetries (liczba prób).
Zaimplementuj funkcję calculateDelay, która oblicza opóźnienie dla każdej próby, stosując wzór exponential backoff (baseDelay * 2^attempt) i dodając jitter (±50%) aby uniknąć thundering herd problem.
Opatrz swoją funkcję API (np. flakyApiCall) w Effect.gen i użyj Schedule z obliczonym opóźnieniem do automatycznego ponawiania żądań – Effect obsługuje retry'e niezawodnie bez ręcznych pętli.
Testuj wzorzec na symulowanym API, które zawodzi kilka razy, aby sprawdzić, czy opóźnienia rosną wykładniczo i czy ostatecznie żądanie się powiedzie.