Π ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΡ
ΡΠΈΡΡΠ΅ΠΌΠ°Ρ
ΠΎΡΠΈΠ±ΠΊΠΈ β ΡΡΠΎ Π½ΠΎΡΠΌΠ°: * Π²Π½Π΅ΡΠ½ΠΈΠ΅ ΡΠ΅ΡΠ²ΠΈΡΡ ΠΏΠ°Π΄Π°ΡΡ * Π·Π°ΠΏΡΠΎΡΡ Π·Π°Π²ΠΈΡΠ°ΡΡ * API Π½Π°ΡΠΈΠ½Π°ΡΡ ΡΠΎΡΠΌΠΎΠ·ΠΈΡΡ * Π½Π°Π³ΡΡΠ·ΠΊΠ° ΡΠ΅Π·ΠΊΠΎ ΡΠ°ΡΡΡΡ ΠΡΠ»ΠΈ Π½Π΅ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΠΊΠΈΠ΅ ΡΠΈΡΡΠ°ΡΠΈΠΈ, ΠΎΠ΄ΠΈΠ½ Π½Π΅ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΡΠΉ ΡΠ΅ΡΠ²ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ Β«ΡΡΠΎΠ½ΠΈΡΡΒ» Π²ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ. Resilience4j ΡΠ΅ΡΠ°Π΅Ρ ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π½Π°Π±ΠΎΡΠ° ΠΏΠ°ΡΡΠ΅ΡΠ½ΠΎΠ² ΠΎΡΠΊΠ°Π·ΠΎΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΡΡΠΈ. ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ: Circuit Breaker ΠΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅Ρ ΡΠ°ΡΡΠΎΡΡ ΠΎΡΠΈΠ±ΠΎΠΊ ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π±Π»ΠΎΠΊΠΈΡΡΠ΅Ρ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ Π½Π΅ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΠΌΡ ΡΠ΅ΡΠ²ΠΈΡΡ, ΡΡΠΎΠ±Ρ Π΄Π°ΡΡ Π΅ΠΌΡ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡΡ. Rate Limiter ΠΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π΅Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΈ Π·Π°ΡΠΈΡΠ°Π΅Ρ ΡΠΈΡΡΠ΅ΠΌΡ ΠΎΡ ΠΏΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠΈ. Retry ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠΎΠ²ΡΠΎΡΡΠ΅Ρ Π·Π°ΠΏΡΠΎΡΡ ΠΏΡΠΈ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
ΡΠ±ΠΎΡΡ
, Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΎΠΉ ΡΠΈΡΠ»Π° ΠΏΠΎΠΏΡΡΠΎΠΊ ΠΈ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»ΠΎΠ². Bulkhead ΠΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π΅Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΡ
Π²ΡΠ·ΠΎΠ²ΠΎΠ² ΠΈΠ»ΠΈ ΠΏΠΎΡΠΎΠΊΠΎΠ², ΡΡΠΎΠ±Ρ ΡΠ±ΠΎΠΉ Π² ΠΎΠ΄Π½ΠΎΠΉ ΡΠ°ΡΡΠΈ Π½Π΅ Π·Π°Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π» ΡΠ΅ΡΡΡΡΡ Π²ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΡ. TimeLimiter Π£ΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΠ°ΠΉΠΌΠ°ΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΡΡΠΎΠ±Ρ Π½Π΅ ΠΆΠ΄Π°ΡΡ ΡΠ»ΠΈΡΠΊΠΎΠΌ Π΄ΠΎΠ»Π³ΠΎ ΠΎΡΠ²Π΅ΡΡ ΠΎΡ Π²Π½Π΅ΡΠ½ΠΈΡ
ΡΠ΅ΡΠ²ΠΈΡΠΎΠ². ΠΠΎΡΠ΅ΠΌΡ ΡΡΠΎ Π²Π°ΠΆΠ½ΠΎ: Π ΠΌΠΈΠΊΡΠΎΡΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠΉ Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΠ΅ Π½Π°Π΄ΡΠΆΠ½ΠΎΡΡΡ β ΡΡΠΎ Π½Π΅ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ ΠΎΡΠΈΠ±ΠΎΠΊ, Π° ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΡΠ°Π²
π₯ Resilience4j - Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π΄Π»Ρ Java, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΡΠ΄Π΅Π»Π°ΡΡ ΠΌΠΈΠΊΡΠΎΡΠ΅ΡΠ²ΠΈΡΡ ΡΡΡΠΎΠΉΡΠΈΠ²ΡΠΌΠΈ ΠΊ ΡΠ±ΠΎΡΠΌ ΠΈ ΠΏΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠ°ΠΌ
2Β Π΄Π½ΡΒ Π½Π°Π·Π°Π΄2Β Π΄Π½ΡΒ Π½Π°Π·Π°Π΄
1 ΠΌΠΈΠ½