Istio Circuit Breaker: Π΄Π΅Π·Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Π΄Π΅Ρ„Π΅ΠΊΡ‚Π½ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ

ΠŸΡ€Π°Π·Π½ΠΈΡ†ΠΈΡ‚Π΅ ΡΠ²ΡŠΡ€ΡˆΠΈΡ…Π° ΠΈ Π½ΠΈΠ΅ сС Π·Π°Π²Ρ€ΡŠΡ‰Π°ΠΌΠ΅ с Π½Π°ΡˆΠ°Ρ‚Π° Π²Ρ‚ΠΎΡ€Π° публикация ΠΎΡ‚ ΠΏΠΎΡ€Π΅Π΄ΠΈΡ†Π°Ρ‚Π° Istio Service Mesh.

Istio Circuit Breaker: Π΄Π΅Π·Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Π΄Π΅Ρ„Π΅ΠΊΡ‚Π½ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ

Π”Π½Π΅ΡˆΠ½Π°Ρ‚Π° Ρ‚Π΅ΠΌΠ° Π΅ Circuit Breaker, ΠΊΠΎΠ΅Ρ‚ΠΎ Π² ΠΏΡ€Π΅Π²ΠΎΠ΄ Π½Π° руска Π΅Π»Π΅ΠΊΡ‚Ρ€ΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠ° ΠΎΠ·Π½Π°Ρ‡Π°Π²Π° β€žΠΏΡ€Π΅ΠΊΡŠΡΠ²Π°Ρ‡β€œ, Π½Π° ΠΎΠ±Ρ‰ Π΅Π·ΠΈΠΊ – β€žΠΏΡ€Π΅ΠΊΡŠΡΠ²Π°Ρ‡β€œ. Π‘Π°ΠΌΠΎ Π² Istio Ρ‚Π°Π·ΠΈ машина Π½Π΅ ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π²Π° късо ΠΈΠ»ΠΈ ΠΏΡ€Π΅Ρ‚ΠΎΠ²Π°Ρ€Π΅Π½Π° Π²Π΅Ρ€ΠΈΠ³Π°, Π° Π΄Π΅Ρ„Π΅ΠΊΡ‚Π½ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ.

Как Ρ‚ΠΎΠ²Π° трябва Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ Π² идСалния случай

ΠšΠΎΠ³Π°Ρ‚ΠΎ микроуслугитС сС управляват ΠΎΡ‚ Kubernetes, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π² Ρ€Π°ΠΌΠΊΠΈΡ‚Π΅ Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° OpenShift, Ρ‚Π΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ сС ΠΌΠ°Ρ‰Π°Π±ΠΈΡ€Π°Ρ‚ Π½Π°Π³ΠΎΡ€Π΅ ΠΈ Π½Π°Π΄ΠΎΠ»Ρƒ Π² зависимост ΠΎΡ‚ Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ. Въй ΠΊΠ°Ρ‚ΠΎ микроуслугитС сС ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚ Π² ΠΏΠΎΠ΄ΠΎΠ²Π΅, ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠΌΠ° мноТСство СкзСмпляри Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈΠ·ΠΈΡ€Π°Π½Π° микроуслуга Π½Π° Π΅Π΄Π½Π° ΠΊΡ€Π°ΠΉΠ½Π° Ρ‚ΠΎΡ‡ΠΊΠ° ΠΈ Kubernetes Ρ‰Π΅ насочва заявкитС ΠΈ Ρ‰Π΅ балансира Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ ΠΌΠ΅ΠΆΠ΄Ρƒ тях. И - Π² идСалния случай - всичко Ρ‚ΠΎΠ²Π° трябва Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ ΠΏΠ΅Ρ€Ρ„Π΅ΠΊΡ‚Π½ΠΎ.

БпомнямС си, Ρ‡Π΅ микроуслугитС са ΠΌΠ°Π»ΠΊΠΈ ΠΈ Π΅Ρ„ΠΈΠΌΠ΅Ρ€Π½ΠΈ. ЕфимСрността, която Ρ‚ΡƒΠΊ ΠΎΠ·Π½Π°Ρ‡Π°Π²Π° Π»Π΅ΠΊΠΎΡ‚Π°Ρ‚Π° Π½Π° появяванС ΠΈ ΠΈΠ·Ρ‡Π΅Π·Π²Π°Π½Π΅, чСсто сС подцСнява. Π Π°ΠΆΠ΄Π°Π½Π΅Ρ‚ΠΎ ΠΈ ΡΠΌΡŠΡ€Ρ‚Ρ‚Π° Π½Π° Π΄Ρ€ΡƒΠ³ СкзСмпляр Π½Π° микроуслуга Π² pod са доста ΠΎΡ‡Π°ΠΊΠ²Π°Π½ΠΈ Π½Π΅Ρ‰Π°, OpenShift ΠΈ Kubernetes сС справят Π΄ΠΎΠ±Ρ€Π΅ с Ρ‚ΠΎΠ²Π° ΠΈ всичко Ρ€Π°Π±ΠΎΡ‚ΠΈ чудСсно - Π½ΠΎ ΠΎΡ‚Π½ΠΎΠ²ΠΎ Π½Π° тСория.

Как наистина Ρ€Π°Π±ΠΎΡ‚ΠΈ

Π‘Π΅Π³Π° си прСдставСтС, Ρ‡Π΅ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π΅Π½ СкзСмпляр Π½Π° микроуслуга, тоСст ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, Π΅ станал Π½Π΅ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π΅ΠΌ: ΠΈΠ»ΠΈ Π½Π΅ отговаря (Π³Ρ€Π΅ΡˆΠΊΠ° 503), ΠΈΠ»ΠΈ, ΠΊΠΎΠ΅Ρ‚ΠΎ Π΅ ΠΏΠΎ-нСприятно, Ρ€Π΅Π°Π³ΠΈΡ€Π°, Π½ΠΎ Ρ‚Π²ΡŠΡ€Π΄Π΅ Π±Π°Π²Π½ΠΎ. Π‘ Π΄Ρ€ΡƒΠ³ΠΈ Π΄ΡƒΠΌΠΈ, Ρ‚ΠΎΠΉ става бъг ΠΈΠ»ΠΈ Π½Π΅ отговаря Π½Π° заявки, Π½ΠΎ Π½Π΅ сС ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ ΠΎΡ‚ ΠΏΡƒΠ»Π°. Какво трябва Π΄Π° сС Π½Π°ΠΏΡ€Π°Π²ΠΈ Π² Ρ‚ΠΎΠ·ΠΈ случай? Π”Π° ΠΎΠΏΠΈΡ‚Π°ΠΌ ΠΎΡ‚Π½ΠΎΠ²ΠΎ? Врябва Π»ΠΈ Π΄Π° Π³ΠΎ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π° ΠΎΡ‚ схСмата Π·Π° ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·ΠΈΡ€Π°Π½Π΅? И ΠΊΠ°ΠΊΠ²ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π²Π° β€žΠΏΡ€Π΅ΠΊΠ°Π»Π΅Π½ΠΎ Π±Π°Π²Π½ΠΎβ€œ – ΠΊΠΎΠ»ΠΊΠΎ Π΅ Π² Ρ†ΠΈΡ„Ρ€ΠΈ ΠΈ ΠΊΠΎΠΉ Π³ΠΈ опрСдСля? МоТС Π±ΠΈ просто си ΠΏΠΎΡ‡ΠΈΠ½Π΅Ρ‚Π΅ ΠΈ ΠΎΠΏΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΎΡ‚Π½ΠΎΠ²ΠΎ ΠΏΠΎ-късно? Ако Π΄Π°, ΠΊΠΎΠ»ΠΊΠΎ ΠΏΠΎ-късно?

Какво С Pool Ejection в Istio

И Ρ‚ΡƒΠΊ Istio ΠΈΠ΄Π²Π° Π½Π° ΠΏΠΎΠΌΠΎΡ‰ със своитС машини Π·Π° Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ ΠΏΡ€Π΅ΠΊΡŠΡΠ²Π°Ρ‡ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π°Ρ‚ Π΄Π΅Ρ„Π΅ΠΊΡ‚Π½ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ ΠΎΡ‚ рСсурсния ΠΏΡƒΠ» Π·Π° ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·ΠΈΡ€Π°Π½Π΅ ΠΈ балансиранС Π½Π° Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ, ΠΏΡ€ΠΈΠ»Π°Π³Π°ΠΉΠΊΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°Ρ‚Π° Π·Π° ΠΈΠ·Ρ…Π²ΡŠΡ€Π»ΡΠ½Π΅ Π½Π° ΠΏΡƒΠ».

Използвайки стратСгия Π·Π° ΠΎΡ‚ΠΊΡ€ΠΈΠ²Π°Π½Π΅ Π½Π° отклонСния, Istio ΠΎΡ‚ΠΊΡ€ΠΈΠ²Π° ΠΊΡ€ΠΈΠ²ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ са извън линията, ΠΈ Π³ΠΈ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π° ΠΎΡ‚ рСсурсния ΠΏΡƒΠ» Π·Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅, Π½Π°Ρ€Π΅Ρ‡Π΅Π½ ΠΏΡ€ΠΎΠ·ΠΎΡ€Π΅Ρ† Π½Π° заспиванС.

Π—Π° Π΄Π° ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚ΠΈ Ρ‚ΠΎΠ²Π° Π² Kubernetes Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° OpenShift, Π½Π΅ΠΊΠ° Π·Π°ΠΏΠΎΡ‡Π½Π΅ΠΌ с Π΅ΠΊΡ€Π°Π½Π½Π° снимка Π½Π° Π½ΠΎΡ€ΠΌΠ°Π»Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π΅Ρ‰ΠΈ микроуслуги ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π² Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅Ρ‚ΠΎ ДСмонстрации Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈ Π½Π° Red Hat. Π’ΡƒΠΊ ΠΈΠΌΠ°ΠΌΠ΅ Π΄Π²Π΅ ΠΏΠΎΠ΄ΠΎΠ²Π΅, v1 ΠΈ v2, всяка ΠΎΡ‚ ΠΊΠΎΠΈΡ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚ΠΈ с Π΅Π΄ΠΈΠ½ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€. ΠšΠΎΠ³Π°Ρ‚ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π°Ρ‚Π° Π·Π° ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° Istio Π½Π΅ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚, Kubernetes ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ балансирано ΠΊΡ€ΡŠΠ³ΠΎΠ²ΠΎ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·ΠΈΡ€Π°Π½Π΅:

Istio Circuit Breaker: Π΄Π΅Π·Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Π΄Π΅Ρ„Π΅ΠΊΡ‚Π½ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ

ΠŸΠΎΠ΄Π³ΠΎΡ‚Π²ΡΠΌ сС Π·Π° катастрофа

ΠŸΡ€Π΅Π΄ΠΈ Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Pool Ejection, трябва Π΄Π° ΡΡŠΠ·Π΄Π°Π΄Π΅Ρ‚Π΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ Π·Π° ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° Istio. Π”Π° ΠΊΠ°ΠΆΠ΅ΠΌ, Ρ‡Π΅ искамС Π΄Π° Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ заявкитС ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π² ΡΡŠΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ 50/50. ОсвСн Ρ‚ΠΎΠ²Π° Ρ‰Π΅ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠΌ броя Π½Π° v2 ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈΡ‚Π΅ ΠΎΡ‚ Π΅Π΄ΠΈΠ½ Π½Π° Π΄Π²Π°, ΠΊΠ°ΠΊΡ‚ΠΎ слСдва:

oc scale deployment recommendation-v2 --replicas=2 -n tutorial

Π‘Π΅Π³Π° Π·Π°Π΄Π°Π²Π°ΠΌΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ Π·Π° ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·ΠΈΡ€Π°Π½Π΅, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Ρ‚Ρ€Π°Ρ„ΠΈΠΊΡŠΡ‚ Π΄Π° сС разпрСдСля ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π² ΡΡŠΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ 50/50.

Istio Circuit Breaker: Π΄Π΅Π·Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Π΄Π΅Ρ„Π΅ΠΊΡ‚Π½ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ
Π•Ρ‚ΠΎ ΠΊΠ°ΠΊ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΡŠΡ‚ ΠΎΡ‚ Ρ‚ΠΎΠ²Π° ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ:

Istio Circuit Breaker: Π΄Π΅Π·Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Π΄Π΅Ρ„Π΅ΠΊΡ‚Π½ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ
МоТС Π΄Π° сС заядС, Ρ‡Π΅ Ρ‚ΠΎΠ·ΠΈ Π΅ΠΊΡ€Π°Π½ Π½Π΅ Π΅ 50/50, Π° 14:9, Π½ΠΎ с Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ ситуацията Ρ‰Π΅ сС ΠΏΠΎΠ΄ΠΎΠ±Ρ€ΠΈ.

ΠŸΡ€Π°Π²Π΅Π½Π΅ Π½Π° бъг

Π‘Π΅Π³Π° Π½Π΅ΠΊΠ° Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°ΠΌΠ΅ Π΅Π΄ΠΈΠ½ ΠΎΡ‚ Π΄Π²Π°Ρ‚Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° v2, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Π΄Π° ΠΈΠΌΠ°ΠΌΠ΅ Π΅Π΄ΠΈΠ½ Π·Π΄Ρ€Π°Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ v1, Π΅Π΄ΠΈΠ½ Π·Π΄Ρ€Π°Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ v2 ΠΈ Π΅Π΄ΠΈΠ½ Π΄Π΅Ρ„Π΅ΠΊΡ‚Π΅Π½ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ v2:

Istio Circuit Breaker: Π΄Π΅Π·Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Π΄Π΅Ρ„Π΅ΠΊΡ‚Π½ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ

ΠšΠΎΡ€ΠΈΠ³ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°

И Ρ‚Π°ΠΊΠ°, ΠΈΠΌΠ°ΠΌΠ΅ Π΄Π΅Ρ„Π΅ΠΊΡ‚Π΅Π½ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ ΠΈ Π΅ Π²Ρ€Π΅ΠΌΠ΅ Π·Π° ΠΈΠ·Ρ…Π²ΡŠΡ€Π»ΡΠ½Π΅ Π½Π° басСйна. Използвайки ΠΌΠ½ΠΎΠ³ΠΎ проста конфигурация, Π½ΠΈΠ΅ Ρ‰Π΅ ΠΈΠ·ΠΊΠ»ΡŽΡ‡ΠΈΠΌ Ρ‚ΠΎΠ·ΠΈ Π½Π΅ΡƒΡΠΏΠ΅ΡˆΠ΅Π½ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ ΠΎΡ‚ всякакви схСми Π·Π° ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π·Π° 15 сСкунди с Π½Π°Π΄Π΅ΠΆΠ΄Π°Ρ‚Π°, Ρ‡Π΅ Ρ‰Π΅ сС Π²ΡŠΡ€Π½Π΅ Π² здравословно ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅ (ΠΈΠ»ΠΈ рСстартиранС, ΠΈΠ»ΠΈ Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° производитСлността). Π•Ρ‚ΠΎ ΠΊΠ°ΠΊ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° Ρ‚Π°Π·ΠΈ конфигурация ΠΈ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈΡ‚Π΅ ΠΎΡ‚ Π½Π΅ΠΉΠ½Π°Ρ‚Π° Ρ€Π°Π±ΠΎΡ‚Π°:

Istio Circuit Breaker: Π΄Π΅Π·Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Π΄Π΅Ρ„Π΅ΠΊΡ‚Π½ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ
Istio Circuit Breaker: Π΄Π΅Π·Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Π΄Π΅Ρ„Π΅ΠΊΡ‚Π½ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ
ΠšΠ°ΠΊΡ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π²ΠΈΠ΄ΠΈΡ‚Π΅, Π½Π΅ΡƒΡΠΏΠ΅ΡˆΠ½ΠΈΡΡ‚ v2 ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ Π²Π΅Ρ‡Π΅ Π½Π΅ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° заявки Π·Π° ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·ΠΈΡ€Π°Π½Π΅, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Π΅ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π°Ρ‚ ΠΎΡ‚ ΠΏΡƒΠ»Π°. Но слСд 15 сСкунди Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ Ρ‰Π΅ сС Π²ΡŠΡ€Π½Π΅ Π² басСйна. Π’ΡΡŠΡ‰Π½ΠΎΡΡ‚ Ρ‚ΠΎΠΊΡƒ-Ρ‰ΠΎ ΠΏΠΎΠΊΠ°Π·Π°Ρ…ΠΌΠ΅ ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚ΠΈ Pool Ejection.

Π”Π° Π·Π°ΠΏΠΎΡ‡Π½Π΅ΠΌ Π΄Π° строим Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°

Pool Ejection, ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€Π°Π½ с Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈΡ‚Π΅ Π·Π° наблюдСниС Π½Π° Istio, Π²ΠΈ позволява Π΄Π° Π·Π°ΠΏΠΎΡ‡Π½Π΅Ρ‚Π΅ Π΄Π° ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Ρ‚Π΅ Ρ€Π°ΠΌΠΊΠ° Π·Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½Π° подмяна Π½Π° Π΄Π΅Ρ„Π΅ΠΊΡ‚Π½ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ, Π·Π° Π΄Π° Π½Π°ΠΌΠ°Π»ΠΈΡ‚Π΅, Π°ΠΊΠΎ Π½Π΅ ΠΈ Π΅Π»ΠΈΠΌΠΈΠ½ΠΈΡ€Π°Ρ‚Π΅, Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π½Π° прСстой ΠΈ ΠΏΠΎΠ²Ρ€Π΅Π΄ΠΈ.
 
НАБА ΠΈΠΌΠ° Π΅Π΄Π½ΠΎ силно ΠΌΠΎΡ‚ΠΎ - ΠŸΡ€ΠΎΠ²Π°Π»ΡŠΡ‚ Π½Π΅ Π΅ опция, Ρ‡ΠΈΠΉΡ‚ΠΎ Π°Π²Ρ‚ΠΎΡ€ сС смята Π·Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ Π½Π° ΠΏΠΎΠ»Π΅Ρ‚Π° Π”ΠΆΠΈΠΉΠ½ ΠšΡ€Π°Π½Ρ†. МоТС Π΄Π° сС ΠΏΡ€Π΅Π²Π΅Π΄Π΅ Π½Π° руски ΠΊΠ°Ρ‚ΠΎ β€žΠŸΡ€ΠΎΠ²Π°Π»ΡŠΡ‚ Π½Π΅ Π΅ ΠΎΠΏΡ†ΠΈΡβ€œ, Π° ΡΠΌΠΈΡΡŠΠ»ΡŠΡ‚ Ρ‚ΡƒΠΊ Π΅, Ρ‡Π΅ всичко ΠΌΠΎΠΆΠ΅ Π΄Π° сС Π½Π°ΠΏΡ€Π°Π²ΠΈ, Π°ΠΊΠΎ ΠΈΠΌΠ°Ρ‚Π΅ Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΎ воля. Π’ рСалния ΠΆΠΈΠ²ΠΎΡ‚ ΠΎΠ±Π°Ρ‡Π΅ ΠΏΡ€ΠΎΠ²Π°Π»ΠΈΡ‚Π΅ Π½Π΅ сС случват просто, Ρ‚Π΅ са Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½ΠΈ, навсякъдС ΠΈ във всичко. И ΠΊΠ°ΠΊ Π΄Π° сС справим с тях Π² случай Π½Π° микроуслуги? Π‘ΠΏΠΎΡ€Π΅Π΄ нас Π΅ ΠΏΠΎ-Π΄ΠΎΠ±Ρ€Π΅ Π΄Π° Π½Π΅ Ρ€Π°Π·Ρ‡ΠΈΡ‚Π°ΠΌΠ΅ Π½Π° силата Π½Π° волята, Π° Π½Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈΡ‚Π΅ Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈΡ‚Π΅, Kubernetes, Red Hat OpenShiftИ Π˜ΡΡ‚ΠΈΠΎ.

Istio, ΠΊΠ°ΠΊΡ‚ΠΎ писахмС ΠΏΠΎ-Π³ΠΎΡ€Π΅, ΠΏΡ€ΠΈΠ»Π°Π³Π° концСпцията Π·Π° ΠΏΡ€Π΅ΠΊΡŠΡΠ²Π°Ρ‡ΠΈ, която сС Π΅ Π΄ΠΎΠΊΠ°Π·Π°Π»Π° Π΄ΠΎΠ±Ρ€Π΅ във физичСския свят. И Ρ‚ΠΎΡ‡Π½ΠΎ ΠΊΠ°ΠΊΡ‚ΠΎ ΠΏΡ€Π΅ΠΊΡŠΡΠ²Π°Ρ‡ΡŠΡ‚ Π½Π° СлСктричСска Π²Π΅Ρ€ΠΈΠ³Π° ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π²Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ½Π° част ΠΎΡ‚ Π²Π΅Ρ€ΠΈΠ³Π°Ρ‚Π°, ΡΠΎΡ„Ρ‚ΡƒΠ΅Ρ€ΡŠΡ‚ Circuit Breaker Π½Π° Istio отваря Π²Ρ€ΡŠΠ·ΠΊΠ°Ρ‚Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠΎΡ‚ΠΎΠΊ ΠΎΡ‚ заявки ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ΅Π½ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π½Π΅Ρ‰ΠΎ Π½Π΅ Π΅ Π½Π°Ρ€Π΅Π΄ с ΠΊΡ€Π°ΠΉΠ½Π°Ρ‚Π° Ρ‚ΠΎΡ‡ΠΊΠ°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ³Π°Ρ‚ΠΎ ΡΡŠΡ€Π²ΡŠΡ€ΡŠΡ‚ сС сринС ΠΈΠ»ΠΈ Π·Π°ΠΏΠΎΡ‡Π½Π΅ Π΄Π° Π·Π°Π±Π°Π²ΠΈ.

ОсвСн Ρ‚ΠΎΠ²Π° във втория случай ΠΈΠΌΠ° само ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ спирачкитС Π½Π° Π΅Π΄ΠΈΠ½ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ Π½Π΅ само причиняват каскада ΠΎΡ‚ забавяния Π½Π° услугитС, ΠΊΠΎΠΈΡ‚ΠΎ ΠΈΠΌΠ°Ρ‚ Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ Π½Π΅Π³ΠΎ ΠΈ Π² Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ Π½Π° Ρ‚ΠΎΠ²Π° намаляват производитСлността Π½Π° систСмата ΠΊΠ°Ρ‚ΠΎ цяло, Π½ΠΎ ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°Ρ‚ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΈ заявки към ΠΈ Π±Π΅Π· Ρ‚ΠΎΠ²Π° Π±Π°Π²Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π΅Ρ‰Π° услуга, ΠΊΠΎΠ΅Ρ‚ΠΎ само влошава ситуацията.

ΠŸΡ€Π΅ΠΊΡŠΡΠ²Π°Ρ‡ Π½Π° тСория

Circuit Breaker Π΅ прокси, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€Π° ΠΏΠΎΡ‚ΠΎΠΊΠ° ΠΎΡ‚ заявки към ΠΊΡ€Π°ΠΉΠ½Π° Ρ‚ΠΎΡ‡ΠΊΠ°. ΠšΠΎΠ³Π°Ρ‚ΠΎ Ρ‚Π°Π·ΠΈ Ρ‚ΠΎΡ‡ΠΊΠ° спрС Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ ΠΈΠ»ΠΈ, Π² зависимост ΠΎΡ‚ Π·Π°Π΄Π°Π΄Π΅Π½ΠΈΡ‚Π΅ настройки, Π·Π°ΠΏΠΎΡ‡Π½Π΅ Π΄Π° сС забавя, проксито ΠΏΡ€Π΅ΠΊΡŠΡΠ²Π° Π²Ρ€ΡŠΠ·ΠΊΠ°Ρ‚Π° с ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°. Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π° Ρ‚Ρ€Π°Ρ„ΠΈΠΊΡŠΡ‚ сС прСнасочва към Π΄Ρ€ΡƒΠ³ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ, просто ΠΏΠΎΡ€Π°Π΄ΠΈ балансиранС Π½Π° Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ. Π’Ρ€ΡŠΠ·ΠΊΠ°Ρ‚Π° остава ΠΎΡ‚Π²ΠΎΡ€Π΅Π½Π° Π·Π° Π΄Π°Π΄Π΅Π½ ΠΏΡ€ΠΎΠ·ΠΎΡ€Π΅Ρ† Π½Π° заспиванС, Π΄Π° ΠΊΠ°ΠΆΠ΅ΠΌ Π΄Π²Π΅ ΠΌΠΈΠ½ΡƒΡ‚ΠΈ, слСд ΠΊΠΎΠ΅Ρ‚ΠΎ сС счита Π·Π° ΠΏΠΎΠ»ΡƒΠΎΡ‚Π²ΠΎΡ€Π΅Π½Π°. ΠžΠΏΠΈΡ‚ΡŠΡ‚ Π·Π° ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°Π½Π΅ Π½Π° слСдващата заявка опрСдСля ΠΏΠΎ-Π½Π°Ρ‚Π°Ρ‚ΡŠΡˆΠ½ΠΎΡ‚ΠΎ ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅ Π½Π° Π²Ρ€ΡŠΠ·ΠΊΠ°Ρ‚Π°. Ако всичко Π΅ Π½Π°Ρ€Π΅Π΄ с услугата, Π²Ρ€ΡŠΠ·ΠΊΠ°Ρ‚Π° сС Π²Ρ€ΡŠΡ‰Π° Π² Ρ€Π°Π±ΠΎΡ‚Π½ΠΎ ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅ ΠΈ ΠΎΡ‚Π½ΠΎΠ²ΠΎ сС затваря. Ако всС ΠΎΡ‰Π΅ ΠΈΠΌΠ° Π½Π΅Ρ‰ΠΎ Π½Π΅Ρ€Π΅Π΄Π½ΠΎ с услугата, Π²Ρ€ΡŠΠ·ΠΊΠ°Ρ‚Π° сС ΠΏΡ€Π΅ΠΊΡŠΡΠ²Π° ΠΈ ΠΏΡ€ΠΎΠ·ΠΎΡ€Π΅Ρ†ΡŠΡ‚ Π·Π° заспиванС сС Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π° ΠΎΡ‚Π½ΠΎΠ²ΠΎ. Π•Ρ‚ΠΎ ΠΊΠ°ΠΊ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° опростСна Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠ° Π½Π° ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΏΡ€Π΅ΠΊΡŠΡΠ²Π°Ρ‡Π°:

Istio Circuit Breaker: Π΄Π΅Π·Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Π΄Π΅Ρ„Π΅ΠΊΡ‚Π½ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ
Π’ΡƒΠΊ Π΅ Π²Π°ΠΆΠ½ΠΎ Π΄Π° сС ΠΎΡ‚Π±Π΅Π»Π΅ΠΆΠΈ, Ρ‡Π΅ всичко Ρ‚ΠΎΠ²Π° сС случва Π½Π° Π½ΠΈΠ²ΠΎ, Ρ‚Π°ΠΊΠ° Π΄Π° сС ΠΊΠ°ΠΆΠ΅, систСмна Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°. Π’Π°ΠΊΠ° Ρ‡Π΅ Π² Π΅Π΄ΠΈΠ½ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Ρ‰Π΅ трябва Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ Π²Π°ΡˆΠΈΡ‚Π΅ прилоТСния Π΄Π° работят с Circuit Breaker, ΠΊΠ°Ρ‚ΠΎ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ прСдоставянС Π½Π° стойност ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ Π² ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€ ΠΈΠ»ΠΈ, Π°ΠΊΠΎ Π΅ възмоТно, ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€Π°Π½Π΅ Π½Π° ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Π½Π΅Ρ‚ΠΎ Π½Π° услугата. Π—Π° Ρ‚ΠΎΠ²Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΌΠΎΠ΄Π΅Π» Π½Π° ΠΏΡ€Π΅Π³Ρ€Π°Π΄Π°, Π½ΠΎ Ρ‚ΠΎΠΉ Π΅ извън ΠΎΠ±Ρ…Π²Π°Ρ‚Π° Π½Π° Ρ‚Π°Π·ΠΈ статия.

ΠŸΡ€Π΅ΠΊΡŠΡΠ²Π°Ρ‡ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°

НапримСр, Π½ΠΈΠ΅ Ρ‰Π΅ стартирамС Π΄Π²Π΅ вСрсии Π½Π° Π½Π°ΡˆΠ°Ρ‚Π° ΠΏΡ€Π΅ΠΏΠΎΡ€ΡŠΡ‡ΠΈΡ‚Π΅Π»Π½Π° микроуслуга Π½Π° OpenShift. ВСрсия 1 Ρ‰Π΅ Ρ€Π°Π±ΠΎΡ‚ΠΈ Π΄ΠΎΠ±Ρ€Π΅, Π½ΠΎ във v2 Ρ‰Π΅ Π²Π³Ρ€Π°Π΄ΠΈΠΌ забавянС, Π·Π° Π΄Π° симулирамС забавянС Π½Π° ΡΡŠΡ€Π²ΡŠΡ€Π°. Π—Π° Π΄Π° Π²ΠΈΠ΄ΠΈΡ‚Π΅ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈΡ‚Π΅, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ инструмСнта обсада:

siege -r 2 -c 20 -v customer-tutorial.$(minishift ip).nip.io

Istio Circuit Breaker: Π΄Π΅Π·Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Π΄Π΅Ρ„Π΅ΠΊΡ‚Π½ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ
Всичко ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ, Π½ΠΎ Π½Π° ΠΊΠ°ΠΊΠ²Π° Ρ†Π΅Π½Π°? На ΠΏΡ€ΡŠΠ² ΠΏΠΎΠ³Π»Π΅Π΄ ΠΈΠΌΠ°ΠΌΠ΅ 100% наличност, Π½ΠΎ ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅Ρ‚Π΅ ΠΏΠΎ-ΠΎΡ‚Π±Π»ΠΈΠ·ΠΎ – максималната ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½ΠΎΡΡ‚ Π½Π° транзакцията Π΅ Ρ†Π΅Π»ΠΈ 12 сСкунди. Π’ΠΎΠ²Π° ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ Π΅ тясно място ΠΈ трябва Π΄Π° бъдС Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΎ.

Π—Π° Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΠΌ Ρ‚ΠΎΠ²Π°, Ρ‰Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Istio, Π·Π° Π΄Π° Π΅Π»ΠΈΠΌΠΈΠ½ΠΈΡ€Π°ΠΌΠ΅ повикванията към Π±Π°Π²Π½ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ. Π•Ρ‚ΠΎ ΠΊΠ°ΠΊ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° ΡΡŠΠΎΡ‚Π²Π΅Ρ‚Π½Π°Ρ‚Π° конфигурация с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° Circuit Breaker:

Istio Circuit Breaker: Π΄Π΅Π·Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Π΄Π΅Ρ„Π΅ΠΊΡ‚Π½ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ
ΠŸΠΎΡΠ»Π΅Π΄Π½ΠΈΡΡ‚ Ρ€Π΅Π΄ с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€Π° httpMaxRequestsPerConnection сигнализира, Ρ‡Π΅ Π²Ρ€ΡŠΠ·ΠΊΠ°Ρ‚Π° с трябва Π΄Π° бъдС ΠΏΡ€Π΅ΠΊΡŠΡΠ½Π°Ρ‚Π°, ΠΊΠΎΠ³Π°Ρ‚ΠΎ сС ΠΎΠΏΠΈΡ‚Π²Π°Ρ‚Π΅ Π΄Π° ΡΡŠΠ·Π΄Π°Π΄Π΅Ρ‚Π΅ Π΄Ρ€ΡƒΠ³Π° - Π²Ρ‚ΠΎΡ€Π° - Π²Ρ€ΡŠΠ·ΠΊΠ° Π² допълнСниС към ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‰Π°Ρ‚Π°. Въй ΠΊΠ°Ρ‚ΠΎ Π½Π°ΡˆΠΈΡΡ‚ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ симулира Π±Π°Π²Π½Π° услуга, Ρ‚Π°ΠΊΠΈΠ²Π° ситуации Ρ‰Π΅ Π²ΡŠΠ·Π½ΠΈΠΊΠ²Π°Ρ‚ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ΠΈΡ‡Π½ΠΎ ΠΈ слСд Ρ‚ΠΎΠ²Π° Istio Ρ‰Π΅ Π²ΡŠΡ€Π½Π΅ Π³Ρ€Π΅ΡˆΠΊΠ° 503, Π½ΠΎ Π΅Ρ‚ΠΎ ΠΊΠ°ΠΊΠ²ΠΎ Ρ‰Π΅ ΠΏΠΎΠΊΠ°ΠΆΠ΅ siege:

Istio Circuit Breaker: Π΄Π΅Π·Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Π΄Π΅Ρ„Π΅ΠΊΡ‚Π½ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ

Π”ΠΎΠ±Ρ€Π΅, ΠΈΠΌΠ°ΠΌΠ΅ ΠΏΡ€Π΅ΠΊΡŠΡΠ²Π°Ρ‡, ΠΊΠ°ΠΊΠ²ΠΎ слСдва?

И Ρ‚Π°ΠΊΠ°, Π²Π½Π΅Π΄Ρ€ΠΈΡ…ΠΌΠ΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π²Π°Π½Π΅, Π±Π΅Π· ΠΈΠ·ΠΎΠ±Ρ‰ΠΎ Π΄Π° докосвамС изходния ΠΊΠΎΠ΄ Π½Π° самитС услуги. Π‘ ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° ΠΏΡ€Π΅ΠΊΡŠΡΠ²Π°Ρ‡Π° ΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°Ρ‚Π° Π·Π° ΠΈΠ·Ρ…Π²ΡŠΡ€Π»ΡΠ½Π΅ Π½Π° басСйн, описани ΠΏΠΎ-Π³ΠΎΡ€Π΅, ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π΅ΠΌ спирачнитС ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ ΠΎΡ‚ рСсурсния ΠΏΡƒΠ», Π΄ΠΎΠΊΠ°Ρ‚ΠΎ сС Π²ΡŠΡ€Π½Π°Ρ‚ към Π½ΠΎΡ€ΠΌΠ°Π»Π½ΠΎΡ‚ΠΎ си ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅, ΠΈ Π΄Π° провСрявамС ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅Ρ‚ΠΎ ΠΈΠΌ Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° чСстота - Π² нашия ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ‚ΠΎΠ²Π° са Π΄Π²Π΅ ΠΌΠΈΠ½ΡƒΡ‚ΠΈ (ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€ sleepWindow).

Π˜ΠΌΠ°ΠΉΡ‚Π΅ ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄, Ρ‡Π΅ способността Π½Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ Π΄Π° Ρ€Π΅Π°Π³ΠΈΡ€Π° Π½Π° Π³Ρ€Π΅ΡˆΠΊΠ° 503 всС ΠΎΡ‰Π΅ Π΅ Π·Π°Π΄Π°Π΄Π΅Π½Π° Π½Π° Π½ΠΈΠ²ΠΎ ΠΈΠ·Ρ…ΠΎΠ΄Π΅Π½ ΠΊΠΎΠ΄. Има ΠΌΠ½ΠΎΠ³ΠΎ стратСгии Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΏΡ€Π΅ΠΊΡŠΡΠ²Π°Ρ‡Π° Π² зависимост ΠΎΡ‚ ситуацията.

Π’ слСдващия пост: Π©Π΅ Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ прослСдяванСто ΠΈ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π°, ΠΊΠΎΠΈΡ‚ΠΎ Π²Π΅Ρ‡Π΅ са Π²Π³Ρ€Π°Π΄Π΅Π½ΠΈ ΠΈΠ»ΠΈ лСсно Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ към Istio, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ ΠΊΠ°ΠΊ ΡƒΠΌΠΈΡˆΠ»Π΅Π½ΠΎ Π΄Π° Π²ΡŠΠ²Π΅ΠΆΠ΄Π°Ρ‚Π΅ Π³Ρ€Π΅ΡˆΠΊΠΈ Π² систСмата.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: www.habr.com

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€