PyForge è in vendita solo qui, sul sito ufficiale py-forge.com — diffida delle imitazioni.

Tutti gli articoli
chaos-engineeringpythonresiliencemicroservices

Rendere i sistemi distribuiti in Python a prova di guasto con ChaosProxy

PyForge Team 5 min di lettura2026-10-17

La maggior parte dei sistemi distribuiti funziona correttamente in condizioni di rete nominali. Ma quando la latenza aumenta o le API HTTP a monte restituiscono errori 502 casuali, le normali strategie di gestione delle eccezioni crollano. ChaosProxy agisce come un middleware e sidecar per testare con precisione queste condizioni al limite.

Come si integra ChaosProxy nell'architettura

Posizionando ChaosProxy tra i tuoi servizi Python e le API esterne o i microservizi interni, puoi intercettare il traffico in uscita. Configuri regole dichiarative per il drop dei pacchetti, jitter artificiale e codici di stato di errore forzati senza modificare il codice applicativo.

Iniezione dichiarativa dei guasti

ChaosProxy mette a disposizione un'interfaccia Python pulita per configurare regole di guasto dinamiche durante i test di integrazione o le pipeline CI di resilienza.

python
from chaosproxy import ChaosProxy, LatencyRule, FailureRule

# Inizializza il proxy locale puntando a un'API a monte
proxy = ChaosProxy(target_url="https://api.payment-gateway.com", port=8080)

# Inietta 1500ms di latenza sul 30% delle richieste
proxy.add_rule(LatencyRule(delay_ms=1500, probability=0.30))

# Forza HTTP 503 Service Unavailable su POST /v1/charges (probabilità 10%)
proxy.add_rule(FailureRule(
    method="POST",
    path_pattern="/v1/charges",
    status_code=503,
    probability=0.10
))

proxy.start()

Automazione della resilienza in CI/CD

L'integrazione dell'iniezione dei guasti direttamente nelle suite pytest assicura che le strategie di fallback, i meccanismi di retry e i circuit breaker vengano verificati automaticamente a ogni pull request.