O projekcie
Silnik dostarczania webhooków zaprojektowany do przetwarzania asynchronicznych zdarzeń pod ścisłymi limitami szybkości i warunkami awarii. System zapewnia wysoką przepustowość przy zachowaniu odporności na błędy zdalnych endpointów.
Repozytorium: github.com/kopolot/example-async-weebhook-engine
Kluczowe implementacje
Odporność na awarie
Wzorzec Circuit Breaker do wstrzymywania wysyłek do niedostępnych endpointów, połączony z Exponential Backoff Retries i routingiem Dead Letter Queue (DLQ) dla nieodzyskiwalnych payloadów.
Współbieżność i limitowanie zapytań
Atomowe blokady Redis (SETNX) egzekwujące limity współbieżności per domena klienta, zapobiegając zalewaniu serwerów docelowych i obsługując backpressure HTTP 429.
Jakość kodu
Ścisłe typowanie (declare(strict_types=1)), PHPStan Level 9, automatyczny zestaw testów PHPUnit i pipeline CI w GitHub Actions.