Ishga tayyor · Tashqi API va failure handling
Daraja: Ilg'or
Timeout, retry, backoff, circuit breaker va aniq fallback qarorlari.
Tushuntirish
## Ishdagi vazifa Tashqi servis sekin yoki xato bo‘lganda o‘z ilovangizni yiqitmaslik. Har chaqiruvda connection va response timeout bor. Retry faqat vaqtinchalik xato va takrorlash xavfsiz bo‘lgan operatsiyaga qo‘llanadi; exponential backoff va jitter bir vaqtdagi qayta urinish to‘lqinini kamaytiradi.
Circuit breaker nosog‘lom dependencyga so‘rovni vaqtincha to‘xtatadi. Fallback har doim to‘g‘ri emas: eski narx ko‘rsatish mumkin, ammo to‘lovni muvaffaqiyatli deb taxmin qilib bo‘lmaydi. 429 dagi `Retry-After`, correlation ID va dependency metriği kuzatiladi.
## Ishga tayyor mezon Timeout, 429, 5xx, buzilgan JSON va sekin response integration testlarda bor.
Kod misoli
var request = HttpRequest.newBuilder(uri)
.timeout(Duration.ofSeconds(3))
.header("X-Correlation-Id", traceId)
.GET().build();
Keng tarqalgan xatolar
- Non-idempotent payment POSTni chegarasiz retry qilib dubl to‘lov yaratish.
Mashqlar
- Mock server bilan beshta failure test yozing.
- Qaysi xatoda retry, fallback yoki darhol fail bo‘lishi jadvalini tuzing.
Teglar: ishga-tayyor, career-02, reliability, http