Β«Walking in my shoesΒ» β€” стоп, Π° Ρ‚Π΅ ΠΌΠ°Ρ€ΠΊΠΈΡ€Π°Π½ΠΈ Π»ΠΈ са?

ΠžΡ‚ 2019 Π³ΠΎΠ΄ΠΈΠ½Π° Π² Русия Π²Π»ΠΈΠ·Π° Π² сила Π·Π°ΠΊΠΎΠ½ Π·Π° Π·Π°Π΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½Π°Ρ‚Π° ΠΌΠ°Ρ€ΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°. Π—Π°ΠΊΠΎΠ½ΡŠΡ‚ Π½Π΅ ΠΎΠ±Ρ…Π²Π°Ρ‰Π° всички Π³Ρ€ΡƒΠΏΠΈ стоки ΠΈ сроковСтС Π·Π° Π·Π°Π΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½Π° ΠΌΠ°Ρ€ΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° Π·Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈΡ‚Π΅ Π³Ρ€ΡƒΠΏΠΈ стоки са Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ. ΠŸΡŠΡ€Π²ΠΎΠ½Π°Ρ‡Π°Π»Π½ΠΎ Π·Π°Π΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½Π°Ρ‚Π° ΠΌΠ°Ρ€ΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° Ρ‰Π΅ ΠΎΠ±Ρ…Π²Π°Π½Π΅ Ρ‚ΡŽΡ‚ΡŽΠ½, ΠΎΠ±ΡƒΠ²ΠΊΠΈ, лСкарства, Π° ΠΏΠΎ-късно Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ стоки, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΠ°Ρ€Ρ„ΡŽΠΌΠΈ, тСкстил ΠΈ мляко. Π’ΠΎΠ²Π° Π·Π°ΠΊΠΎΠ½ΠΎΠ΄Π°Ρ‚Π΅Π»Π½ΠΎ нововъвСдСниС ΠΏΡ€Π΅Π΄ΠΈΠ·Π²ΠΈΠΊΠ° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π½ΠΎΠ²ΠΈ ИВ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, ΠΊΠΎΠΈΡ‚ΠΎ Ρ‰Π΅ позволят прослСдяванСто Π½Π° цСлия ΠΆΠΈΠ·Π½Π΅Π½ Ρ†ΠΈΠΊΡŠΠ» Π½Π° стоката ΠΎΡ‚ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π½Π° производство Π΄ΠΎ ΠΏΠΎΠΊΡƒΠΏΠΊΠ°Ρ‚Π° ΠΎΡ‚ крайния ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π», ΠΊΠ°Ρ‚ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π²Π° всички участници Π² процСса: ΠΊΠ°ΠΊΡ‚ΠΎ самата Π΄ΡŠΡ€ΠΆΠ°Π²Π°, Ρ‚Π°ΠΊΠ° ΠΈ всички ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Ρ‚ стоки с Π·Π°Π΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½Π° ΠΌΠ°Ρ€ΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°.

Π’ Π₯5 систСмата, която Ρ‰Π΅ прослСдява стокитС с ΠΌΠ°Ρ€ΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΈ Ρ‰Π΅ обмСня Π΄Π°Π½Π½ΠΈ с Π΄ΡŠΡ€ΠΆΠ°Π²Π°Ρ‚Π° ΠΈ доставчицитС, ΠΏΠΎΠ»ΡƒΡ‡ΠΈ ΠΈΠΌΠ΅Ρ‚ΠΎ "ΠœΠ°Ρ€ΠΊΡƒΡ". НСка Π΄Π° Ρ€Π°Π·ΠΊΠ°ΠΆΠ΅ΠΌ ΠΏΠΎ Ρ€Π΅Π΄ ΠΊΠ°ΠΊ ΠΈ ΠΊΠΎΠΉ я Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°, ΠΊΠ°ΠΊΠ²ΠΈ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΏΡ€ΠΈΡ‚Π΅ΠΆΠ°Π²Π° ΠΈ с ΠΊΠ°ΠΊΠ²ΠΎ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° сС Π³ΠΎΡ€Π΄Π΅Π΅ΠΌ.

Β«Walking in my shoesΒ» β€” стоп, Π° Ρ‚Π΅ ΠΌΠ°Ρ€ΠΊΠΈΡ€Π°Π½ΠΈ Π»ΠΈ са?

Π˜ΡΡ‚ΠΈΠ½ΡΠΊΠΈ HighLoad

"ΠœΠ°Ρ€ΠΊΡƒΡ" Ρ€Π΅ΡˆΠ°Π²Π° мноТСство Π·Π°Π΄Π°Ρ‡ΠΈ, Π½Π°ΠΉ-Π²Π°ΠΆΠ½Π°Ρ‚Π° ΠΎΡ‚ ΠΊΠΎΠΈΡ‚ΠΎ Π΅ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΡ‚ΠΎ взаимодСйствиС ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΈΡ‚Π΅ систСми Π½Π° Π₯5 ΠΈ Π΄ΡŠΡ€ΠΆΠ°Π²Π½Π°Ρ‚Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Π° систСма Π·Π° ΠΌΠ°Ρ€ΠΊΠΈΡ€Π°Π½Π°Ρ‚Π° продукция (Π“Π˜Π‘ МП) Π·Π° прослСдяванС Π½Π° Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΌΠ°Ρ€ΠΊΠΈΡ€Π°Π½Π°Ρ‚Π° продукция. ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π° всички ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈ ΠΎΡ‚ нас ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π·Π° ΠΌΠ°Ρ€ΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΈ цялата история Π½Π° Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° Ρ‚Π΅Π·ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅ ΠΏΠΎ ΠΎΠ±Π΅ΠΊΡ‚ΠΈ, ΠΏΠΎΠΌΠ°Π³Π° Π΄Π° сС ΠΈΠ·Π±Π΅Π³Π½Π΅ ΠΏΠΎΠΏΠ°Π΄Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π½Π΅Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈ ΠΌΠ°Ρ€ΠΊΠΈΡ€Π°Π½ΠΈ стоки. НапримСр, Π² случая с Ρ‚ΡŽΡ‚ΡŽΠ½Π΅Π²ΠΈΡ‚Π΅ издСлия, ΠΊΠΎΠΈΡ‚ΠΎ влязоха Π² ΠΏΡŠΡ€Π²ΠΈΡ‚Π΅ ΠΌΠ°Ρ€ΠΊΠΈΡ€Π°Π½ΠΈ стоки, само Π΅Π΄ΠΈΠ½ ΠΊΠ°ΠΌΠΈΠΎΠ½ Ρ†ΠΈΠ³Π°Ρ€ΠΈ ΡΡŠΠ΄ΡŠΡ€ΠΆΠ° ΠΎΠΊΠΎΠ»ΠΎ 600 000 ΠΊΡƒΡ‚ΠΈΠΈ, всяка ΠΎΡ‚ ΠΊΠΎΠΈΡ‚ΠΎ ΠΈΠΌΠ° свой ΡƒΠ½ΠΈΠΊΠ°Π»Π΅Π½ ΠΊΠΎΠ΄. Π—Π°Π΄Π°Ρ‡Π°Ρ‚Π° Π½Π° Π½Π°ΡˆΠ°Ρ‚Π° систСма Π΅ Π΄Π° прослСди ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈ лСгалността Π½Π° Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° всяка Ρ‚Π°ΠΊΠ°Π²Π° ΠΊΡƒΡ‚ΠΈΠΉΠΊΠ° ΠΌΠ΅ΠΆΠ΄Ρƒ складовСтС ΠΈ ΠΌΠ°Π³Π°Π·ΠΈΠ½ΠΈΡ‚Π΅ ΠΈ Π² ΠΊΡ€Π°ΠΉΠ½Π° смСтка Π΄Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈ допустимостта Π½Π° тяхната ΠΏΡ€ΠΎΠ΄Π°ΠΆΠ±Π° Π½Π° крайния ΠΊΡƒΠΏΡƒΠ²Π°Ρ‡. ΠžΡ‰Π΅ ΠΏΠΎΠ²Π΅Ρ‡Π΅, рСгистрирамС ΠΎΠΊΠΎΠ»ΠΎ 125 000 касови ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π° час, Π° ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° трябва Π΄Π° рСгистрирамС ΠΊΠ°ΠΊ всяка Ρ‚Π°ΠΊΠ°Π²Π° ΠΊΡƒΡ‚ΠΈΠΉΠΊΠ° Π΅ ΠΏΠΎΠΏΠ°Π΄Π½Π°Π»Π° Π² ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°. Π£Ρ‡ΠΈΡ‚Ρ‹Π²Π°ΠΉΠΊΠΈ всички Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±Π΅ΠΊΡ‚ΠΈΡ‚Π΅, ΠΎΡ‡Π°ΠΊΠ²Π°ΠΌΠ΅ дСсСтки ΠΌΠΈΠ»ΠΈΠ°Ρ€Π΄ΠΈ записи Π½Π° Π³ΠΎΠ΄ΠΈΠ½Π°.

Π•ΠΊΠΈΠΏΡŠΡ‚ Π½Π° М

Π’ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‡Π΅ "ΠœΠ°Ρ€ΠΊΡƒΡ" сС счита Π·Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π² Ρ€Π°ΠΌΠΊΠΈΡ‚Π΅ Π½Π° Π₯5, Ρ‚ΠΎΠΉ сС Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π° ΠΏΠΎ продуктовия ΠΏΠΎΠ΄Ρ…ΠΎΠ΄. Π•ΠΊΠΈΠΏΡŠΡ‚ Ρ€Π°Π±ΠΎΡ‚ΠΈ ΠΏΠΎ Scrum. Π‘Ρ‚Π°Ρ€Ρ‚ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° бСшС ΠΏΡ€Π΅Π· лятото Π½Π° ΠΌΠΈΠ½Π°Π»Π°Ρ‚Π° Π³ΠΎΠ΄ΠΈΠ½Π°, Π½ΠΎ ΠΏΡŠΡ€Π²ΠΈΡ‚Π΅ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈ пристигнаха Π΅Π΄Π²Π° ΠΏΡ€Π΅Π· ΠΎΠΊΡ‚ΠΎΠΌΠ²Ρ€ΠΈ - бСшС ΡΡŠΠ±Ρ€Π°Π½ΠΈΡΡ‚ Π΅ΠΊΠΈΠΏ, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π΅Π½Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° Π½Π° систСмата ΠΈ Π·Π°ΠΊΡƒΠΏΠ΅Π½ΠΎ ΠΎΠ±ΠΎΡ€ΡƒΠ΄Π²Π°Π½Π΅. Π’ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π΅ΠΊΠΈΠΏΡŠΡ‚ сС ΡΡŠΡΡ‚ΠΎΠΈ ΠΎΡ‚ 16 Π΄ΡƒΡˆΠΈ, ΡˆΠ΅ΡΡ‚ ΠΎΡ‚ ΠΊΠΎΠΈΡ‚ΠΎ сС Π·Π°Π½ΠΈΠΌΠ°Π²Π°Ρ‚ с Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° backend ΠΈ frontend, Ρ‚Ρ€ΠΈ с систСмСн Π°Π½Π°Π»ΠΈΠ·. ΠžΡ‰Π΅ ΡˆΠ΅ΡΡ‚ Ρ‡ΠΎΠ²Π΅ΠΊΠ° работят ΠΏΠΎ Ρ€ΡŠΡ‡Π½ΠΎ, Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Ρ‰ΠΎ ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€Π°Π½ΠΎ тСстванС ΠΈ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°. ОсвСн Ρ‚ΠΎΠ²Π° Ρ€Π°Π·ΠΏΠΎΠ»Π°Π³Π°ΠΌΠ΅ с SRE спСциалист.

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

ВслСдствиС Π½Π° пандСмията ΠΎΡ‚ коронавирус, Π½ΠΈΠ΅ прСмСстихмС цСлия Π΅ΠΊΠΈΠΏ Π½Π° дистанционна Ρ€Π°Π±ΠΎΡ‚Π°, Π½Π°Π»ΠΈΡ‡ΠΈΠ΅Ρ‚ΠΎ Π½Π° всички инструмСнти Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π°, ΠΈΠ·Π³Ρ€Π°Π΄Π΅Π½ΠΈΡ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Π½ΠΈ процСси Π² Jira ΠΈ GitLab Π½ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ…Π° Π΄Π° ΠΏΡ€Π΅ΠΌΠΈΠ½Π΅ΠΌ лСсно ΠΏΡ€Π΅Π· Ρ‚ΠΎΠ·ΠΈ Π΅Ρ‚Π°ΠΏ. ΠŸΡ€Π΅ΠΌΠΈΠ½Π°Ρ‚ΠΈΡ‚Π΅ мСсСци Π½Π° дистанционна Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠΎΠΊΠ°Π·Π°Ρ…Π°, Ρ‡Π΅ производитСлността Π½Π° Π΅ΠΊΠΈΠΏΠ° Π½Π΅ Π΅ пострадала, Π·Π° ΠΌΠ½ΠΎΠ³ΠΎ Ρ…ΠΎΡ€Π° ΠΊΠΎΠΌΡ„ΠΎΡ€Ρ‚ΡŠΡ‚ Π² Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° сС ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈ, СдинствСно Π½Π΅ Π΄ΠΎΡΡ‚ΠΈΠ³Π°ΡˆΠ΅ ΠΆΠΈΠ²ΠΎΡ‚ΠΎ ΠΎΠ±Ρ‰ΡƒΠ²Π°Π½Π΅.

Π‘Ρ€Π΅Ρ‰Π° Π½Π° Π΅ΠΊΠΈΠΏΠ° ΠΏΡ€Π΅Π΄ΠΈ дистанционната Ρ€Π°Π±ΠΎΡ‚Π°

Β«Walking in my shoesΒ» β€” стоп, Π° Ρ‚Π΅ ΠΌΠ°Ρ€ΠΊΠΈΡ€Π°Π½ΠΈ Π»ΠΈ са?

Π‘Ρ€Π΅Ρ‰ΠΈ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° дистанционната Ρ€Π°Π±ΠΎΡ‚Π°

Β«Walking in my shoesΒ» β€” стоп, Π° Ρ‚Π΅ ΠΌΠ°Ρ€ΠΊΠΈΡ€Π°Π½ΠΈ Π»ΠΈ са?

Π’Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΡ‡Π΅Π½ стСк Π½Π° Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ

Бтандартният Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡƒΠΌ ΠΈ инструмСнт Π·Π° CI/CD Π·Π° Π₯5 Π΅ GitLab. НиС Π³ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Π·Π° ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Π½Π΅ Π½Π° ΠΊΠΎΠ΄Π°, Π½Π΅ΠΏΡ€Π΅ΠΊΡŠΡΠ½Π°Ρ‚ΠΎ тСстванС, Ρ€Π°Π·Π³Ρ€ΡŠΡ‰Π°Π½Π΅ Π½Π° тСстови ΠΈ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈΠ²Π½ΠΈ ΡΡŠΡ€Π²ΡŠΡ€ΠΈ. Π‘ΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°Ρ‚Π° Π½Π° code review, ΠΊΠΎΠ³Π°Ρ‚ΠΎ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ 2 ΠΊΠΎΠ»Π΅Π³ΠΈ трябва Π΄Π° одобрят ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚Π΅ Π² ΠΊΠΎΠ΄Π°, Π½Π°ΠΏΡ€Π°Π²Π΅Π½ΠΈ ΠΎΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°. Π‘Ρ‚Π°Ρ‚ΠΈΡ‡Π½ΠΈΡ‚Π΅ Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ΠΈ Π½Π° ΠΊΠΎΠ΄Π° SonarQube ΠΈ JaCoCo Π½ΠΈ ΠΏΠΎΠΌΠ°Π³Π°Ρ‚ Π΄Π° ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°ΠΌΠ΅ ΠΊΠΎΠ΄Π° чист ΠΈ Π΄Π° осигурим Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡ‚ΠΎ Π½ΠΈΠ²ΠΎ Π½Π° ΠΏΠΎΠΊΡ€ΠΈΡ‚ΠΈΠ΅ с unit тСстовС. Всички ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ Π² ΠΊΠΎΠ΄Π° Π·Π°Π΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½ΠΎ ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Π²Π°Ρ‚ ΠΏΡ€Π΅Π· Ρ‚Π΅Π·ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ. Всички тСстови сцСнарии, ΠΊΠΎΠΈΡ‚ΠΎ сС ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚ Ρ€ΡŠΡ‡Π½ΠΎ, впослСдствиС сС Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€Π°Ρ‚.

Π—Π° ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΡ‚ΠΎ изпълнСниС Π½Π° бизнСс процСситС с "ΠœΠ°Ρ€ΠΊΡƒΡ" Ρ‚Ρ€ΡΠ±Π²Π°ΡˆΠ΅ Π΄Π° Ρ€Π΅ΡˆΠΈΠΌ Ρ€Π΅Π΄ΠΈΡ†Π° Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΡ‡Π½ΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ, Π·Π° всяка ΠΎΡ‚ ΠΊΠΎΠΈΡ‚ΠΎ ΠΏΠΎ Ρ€Π΅Π΄.

Π—Π°Π΄Π°Ρ‡Π° 1. НСобходимост ΠΎΡ‚ Ρ…ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»Π½ΠΎ ΠΌΠ°Ρ‰Π°Π±ΠΈΡ€Π°Π½Π΅ Π½Π° систСмата

Π—Π° Ρ€Π΅ΡˆΠ°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Ρ‚Π°Π·ΠΈ Π·Π°Π΄Π°Ρ‡Π° ΠΈΠ·Π±Ρ€Π°Ρ…ΠΌΠ΅ микросСрвизСн ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ към Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°Ρ‚Π°. ΠŸΡ€ΠΈ Ρ‚ΠΎΠ²Π° бСшС ΠΌΠ½ΠΎΠ³ΠΎ Π²Π°ΠΆΠ½ΠΎ Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ областитС Π½Π° отговорност Π½Π° сСрвиситС. ΠžΠΏΠΈΡ‚Π°Ρ…ΠΌΠ΅ сС Π΄Π° Π³ΠΈ Ρ€Π°Π·Π΄Π΅Π»ΠΈΠΌ ΠΏΠΎ бизнСс ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΊΠ°Ρ‚ΠΎ Π²Π·Π΅Ρ…ΠΌΠ΅ ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄ спСцификата Π½Π° процСситС. НапримСр, ΠΏΡ€ΠΈΠ΅ΠΌΠ°Π½Π΅Ρ‚ΠΎ Π½Π° стоки Π² склада Π΅ Π½Π΅ Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° чСста, Π½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΠΌΠ½Π° опСрация, ΠΏΡ€ΠΈ която трябва максимално Π±ΡŠΡ€Π·ΠΎ Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ ΠΎΡ‚ Π΄ΡŠΡ€ΠΆΠ°Π²Π½ΠΈΡ Ρ€Π΅Π³ΡƒΠ»Π°Ρ‚ΠΎΡ€ информация Π·Π° ΠΏΡ€ΠΈΠ΅ΠΌΠ°Π½ΠΈΡ‚Π΅ Π΅Π΄ΠΈΠ½ΠΈΡ†ΠΈ стока, количСствата ΠΎΡ‚ ΠΊΠΎΠΈΡ‚ΠΎ Π² Π΅Π΄Π½Π° доставка достигат Π΄ΠΎ 600000, Π΄Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ допустимостта Π½Π° ΠΏΡ€ΠΈΠ΅ΠΌΠ°Π½Π΅Ρ‚ΠΎ Π½Π° Ρ‚Π°Π·ΠΈ стока Π² склада ΠΈ Π΄Π° ΠΏΡ€Π΅Π΄Π°Π΄Π΅ΠΌ цялата Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ° информация Π½Π° систСмата Π·Π° автоматизация Π½Π° склада. А ΠΎΡ‚Π³Ρ€ΡƒΠ·ΠΊΠ°Ρ‚Π° ΠΎΡ‚ складовСтС ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-голяма интСнзивност, Π½ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π° ΠΌΠ°Π»ΠΊΠΈ ΠΎΠ±Π΅ΠΌΠΈ Π΄Π°Π½Π½ΠΈ.

Всички услуги Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°ΠΌΠ΅ ΠΏΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ° stateless ΠΈ Π΄ΠΎΡ€ΠΈ Π²ΡŠΡ‚Ρ€Π΅ΡˆΠ½ΠΈΡ‚Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ сС ΠΎΠΏΠΈΡ‚Π²Π°ΠΌΠ΅ Π΄Π° Ρ€Π°Π·Π΄Π΅Π»ΠΈΠΌ Π½Π° ΡΡ‚ΡŠΠΏΠΊΠΈ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ, ΠΊΠ°ΠΊ Π³ΠΈ Π½Π°Ρ€ΠΈΡ‡Π°ΠΌΠ΅, self-Ρ‚ΠΎΠΏΠΈΡ†ΠΈ Kafka. Π’ΠΎΠ²Π° Π΅ ΠΊΠΎΠ³Π°Ρ‚ΠΎ микросСрвис ΠΈΠ·ΠΏΡ€Π°Ρ‰Π° ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ сам Π½Π° сСбС си, ΠΊΠΎΠ΅Ρ‚ΠΎ позволява Π΄Π° балансирамС Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ ΠΏΡ€ΠΈ ΠΏΠΎ-рСсурсоСмки ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈ улСснява ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π½Π° ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°, Π½ΠΎ Π·Π° Ρ‚ΠΎΠ²Π° ΠΏΠΎ-късно.

Π Π΅ΡˆΠΈΡ…ΠΌΠ΅ Π΄Π° ΠΈΠ·ΠΎΠ»ΠΈΡ€Π°ΠΌΠ΅ Π² ΠΎΡ‚Π΄Π΅Π»Π½ΠΈ услуги ΠΌΠΎΠ΄ΡƒΠ»ΠΈΡ‚Π΅ Π·Π° взаимодСйствиС с външни систСми. Π’ΠΎΠ²Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈ Π΄Π° Ρ€Π΅ΡˆΠΈΠΌ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° с чСсто промСнящитС сС API Π½Π° външни систСми, практичСски Π±Π΅Π· влияниС Π²ΡŠΡ€Ρ…Ρƒ услугитС с бизнСс функционалност.

Β«Walking in my shoesΒ» β€” стоп, Π° Ρ‚Π΅ ΠΌΠ°Ρ€ΠΊΠΈΡ€Π°Π½ΠΈ Π»ΠΈ са?

Всички микросСрвизи сС Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‚ Π² кластСра OpenShift, ΠΊΠΎΠΉΡ‚ΠΎ Ρ€Π΅ΡˆΠ°Π²Π° ΠΊΠ°ΠΊΡ‚ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° с ΠΌΠ°Ρ‰Π°Π±ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° всСки микросСрвис, Ρ‚Π°ΠΊΠ° ΠΈ Π½ΠΈ позволява Π΄Π° Π½Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ външни инструмСнти Π·Π° Service Discovery.

Π—Π°Π΄Π°Ρ‡Π° 2. НСобходимост ΠΎΡ‚ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Π½Π΅ Π½Π° високо Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ½Ρ‚Π΅Π½Π·ΠΈΠ²Π΅Π½ ΠΎΠ±ΠΌΠ΅Π½ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ сСрвиситС Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°: само Π½Π° Ρ„Π°Π·Π°Ρ‚Π° Π½Π° стартиранС Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° сС ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Ρ‚ ΠΎΠΊΠΎΠ»ΠΎ 600 ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² сСкунда. ΠžΡ‡Π°ΠΊΠ²Π°ΠΌΠ΅ ΡƒΠ²Π΅Π»ΠΈΡ‡Π°Π²Π°Π½Π΅ Π½Π° Ρ‚ΠΎΠ²Π° число Π΄ΠΎ 5000 ΠΎΠΏ/сСк с нарастващия Π±Ρ€ΠΎΠΉ Ρ‚ΡŠΡ€Π³ΠΎΠ²ΡΠΊΠΈ ΠΎΠ±Π΅ΠΊΡ‚ΠΈ, ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ с Π½Π°ΡˆΠ°Ρ‚Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°.

Π’Π°Π·ΠΈ Π·Π°Π΄Π°Ρ‡Π° бСшС Ρ€Π΅ΡˆΠ΅Π½Π° с Ρ€Π°Π·Π³Ρ€ΡŠΡ‰Π°Π½Π΅Ρ‚ΠΎ Π½Π° кластСр Kafka ΠΈ ΠΏΠΎΡ‡Ρ‚ΠΈ ΠΏΡŠΠ»Π½ΠΎΡ‚ΠΎ ΠΎΡ‚ΠΊΠ°Π·Π²Π°Π½Π΅ ΠΎΡ‚ синхронната Π²Π·Π°ΠΈΠΌΠΎΠ²Ρ€ΡŠΠ·ΠΊΠ° ΠΌΠ΅ΠΆΠ΄Ρƒ микросСрвиситС Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°. Π’ΠΎΠ²Π° изисква ΠΌΠ½ΠΎΠ³ΠΎ Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»Π΅Π½ Π°Π½Π°Π»ΠΈΠ· Π½Π° изискванията към систСмата, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Π½Π΅ всички ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ асинхронни. Π’ ΡΡŠΡ‰ΠΎΡ‚ΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π΅ просто ΠΏΡ€Π΅Π΄Π°Π²Π°ΠΌΠ΅ ΡΡŠΠ±ΠΈΡ‚ΠΈΡ ΠΏΡ€Π΅Π· Π±Ρ€ΠΎΠΊΠ΅Ρ€Π°, Π½ΠΎ ΠΈ ΠΏΡ€Π΅Π΄Π°Π²Π°ΠΌΠ΅ Π² ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅Ρ‚ΠΎ цялата Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ° бизнСс информация. Π’Π°ΠΊΠ° Ρ€Π°Π·ΠΌΠ΅Ρ€ΡŠΡ‚ Π½Π° ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° достигнС няколко стотици ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡ‚Π°. ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΎΠ±Π΅ΠΌΠ° Π½Π° ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡΡ‚Π° Π² Kafka Π½ΠΈ изисква Ρ‚ΠΎΡ‡Π½ΠΎ ΠΏΡ€ΠΎΠ³Π½ΠΎΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π½Π° ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡΡ‚Π°, ΠΈ ΠΏΡ€ΠΈ нСобходимост Π³ΠΈ раздСлямС, Π½ΠΎ раздСлянСто Π΅ логичСско ΠΈ ΡΠ²ΡŠΡ€Π·Π°Π½ΠΎ с бизнСс ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈΡ‚Π΅.
НапримСр, стоката, пристигнала Π² Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π°, раздСлямС ΠΏΠΎ ΠΊΡƒΡ‚ΠΈΠΈ. Π—Π° синхронни ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ сС ΠΏΡ€Π΅Π΄Π²ΠΈΠΆΠ΄Π°Ρ‚ ΠΎΡ‚Π΄Π΅Π»Π½ΠΈ микросСрвизи ΠΈ сС ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π° Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»Π½ΠΎ Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Ρ‰ΠΎ тСстванС. Π˜Π·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Kafka постави ΠΏΡ€Π΅Π΄ нас Π΄Ρ€ΡƒΠ³ΠΎ прСдизвикатСлство β€” ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°Ρ‚Π° Π½Π° Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° Π½Π° нашия сСрвис с ΠΎΠ³Π»Π΅Π΄ Π½Π° интСграцията с Kafka ΠΏΡ€Π°Π²ΠΈ всичкитС Π½ΠΈ unit тСстовС асинхронни. Π’Π°Π·ΠΈ Π·Π°Π΄Π°Ρ‡Π° Ρ€Π΅ΡˆΠ°Π²Π°Ρ…ΠΌΠ΅ Ρ‡Ρ€Π΅Π· написванСто Π½Π° собствСни ΠΏΠΎΠ»Π΅Π·Π½ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ с ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Embedded Kafka Broker. Π’ΠΎΠ²Π° Π½Π΅ отмСня нСобходимостта ΠΎΡ‚ написванС Π½Π° unit тСстовС Π·Π° ΠΎΡ‚Π΄Π΅Π»Π½ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ, Π½ΠΎ слоТнитС казуси ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°ΠΌΠ΅ Π΄Π° тСствамС с ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Kafka.

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

Π—Π°Π΄Π°Ρ‡Π° 3. НСобходимостта ΠΎΡ‚ ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Π½Π΅ Π½Π° голямо количСство Π΄Π°Π½Π½ΠΈ: Π½Π°Π΄ 1 ΠΌΠΈΠ»ΠΈΠ°Ρ€Π΄ ΠΌΠ°Ρ€ΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ годишно само Π·Π° Ρ‚ΡŽΡ‚ΡŽΠ½ ΠΏΠΎΡΡ‚ΡŠΠΏΠ²Π°Ρ‚ Π² X5. Π’Π΅ изискват постоянСн ΠΈ Π±ΡŠΡ€Π· Π΄ΠΎΡΡ‚ΡŠΠΏ. Π’ цялата систСма трябва Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½ΠΈ ΠΎΠΊΠΎΠ»ΠΎ 10 ΠΌΠΈΠ»ΠΈΠ°Ρ€Π΄Π° записи Π² историята Π½Π° Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΌΠ°Ρ€ΠΊΠΈΡ€Π°Π½ΠΈΡ‚Π΅ стоки.

Π—Π° Ρ€Π΅ΡˆΠ°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Ρ‚Ρ€Π΅Ρ‚Π°Ρ‚Π° Π·Π°Π΄Π°Ρ‡Π° бСшС ΠΈΠ·Π±Ρ€Π°Π½Π° NoSQL Π±Π°Π·Π° MongoDB. Π˜Π·Π³Ρ€Π°Π΄ΠΈΠ»ΠΈ смС ΡˆΠ°Ρ€Π΄ ΠΎΡ‚ 5 Π½ΠΎΠ΄Π° ΠΈ във всСки Π½ΠΎΠ΄ Replica Set ΠΎΡ‚ 3 ΡΡŠΡ€Π²ΡŠΡ€Π°. Π’ΠΎΠ²Π° позволява Ρ…ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»Π½ΠΎ ΠΌΠ°Ρ‰Π°Π±ΠΈΡ€Π°Π½Π΅ Π½Π° систСмата, добавяйки Π½ΠΎΠ²ΠΈ ΡΡŠΡ€Π²ΡŠΡ€ΠΈ Π² ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€Π° ΠΈ Π΄Π° осигури Π½Π΅Π³ΠΎΠ²Π°Ρ‚Π° устойчивост. Π’ΡƒΠΊ сС ΡΠ±Π»ΡŠΡΠΊΠ°Ρ…ΠΌΠ΅ с Π΄Ρ€ΡƒΠ³ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ β€” осигуряванС Π½Π° транзакционност Π² ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€Π° Π½Π° Mongo с ΠΎΠ³Π»Π΅Π΄ Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Ρ…ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»Π½ΠΎ ΠΌΠ°Ρ‰Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΠΈ микросСрвизи. НапримСр, Π΅Π΄Π½Π° ΠΎΡ‚ Π·Π°Π΄Π°Ρ‡ΠΈΡ‚Π΅ Π½Π° Π½Π°ΡˆΠ°Ρ‚Π° систСма Π΅ Π΄Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€Π° ΠΎΠΏΠΈΡ‚ΠΈ Π·Π° ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½Π° ΠΏΡ€ΠΎΠ΄Π°ΠΆΠ±Π° Π½Π° стоки с Π΅Π΄Π½Π°ΠΊΠ²ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π½Π° ΠΌΠ°Ρ€ΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°. Π’ΡƒΠΊ сС появяват ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ с Π³Ρ€Π΅ΡˆΠ½ΠΈ сканирания ΠΈΠ»ΠΈ с Π΄ΡŠΡ€ΠΆΠ°Π²Π½ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π° касиСритС. ΠžΡ‚ΠΊΡ€ΠΈΡ…ΠΌΠ΅, Ρ‡Π΅ Ρ‚Π°ΠΊΠΈΠ²Π° Π΄ΡƒΠ±Π»ΠΈ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС появят ΠΊΠ°ΠΊΡ‚ΠΎ Π² Ρ€Π°ΠΌΠΊΠΈΡ‚Π΅ Π½Π° Π΅Π΄ΠΈΠ½ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½ batch Π½Π° Kafka, Ρ‚Π°ΠΊΠ° ΠΈ Π² Π΄Π²Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½ΠΈ ΠΏΠ°Ρ€Π°Π»Π΅Π»Π½ΠΎ batch-Π°. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»Π½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°Ρ‚Π° Π·Π° Π΄ΡƒΠ±Π»ΠΈΡ€Π°Π½Π΅ Ρ‡Ρ€Π΅Π· заявка към Π±Π°Π·Π°Ρ‚Π° Π½Π΅ давашС Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈ. Π—Π° всСки ΠΎΡ‚ микросСрвиситС Ρ€Π΅ΡˆΠ°Π²Π°Ρ…ΠΌΠ΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° ΠΎΡ‚Π΄Π΅Π»Π½ΠΎ, Π² зависимост ΠΎΡ‚ бизнСс Π»ΠΎΠ³ΠΈΠΊΠ°Ρ‚Π° Π½Π° Ρ‚ΠΎΠ·ΠΈ сСрвис. НапримСр, Π·Π° Ρ‡Π΅ΠΊΠΎΠ²Π΅Ρ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ…ΠΌΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π² Ρ€Π°ΠΌΠΊΠΈΡ‚Π΅ Π½Π° batch-Π° ΠΈ ΠΎΡ‚Π΄Π΅Π»Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π·Π° Π΄ΡƒΠ±Π»ΠΈΠΊΠ°Ρ‚ΠΈ ΠΏΡ€ΠΈ вмъкванС.

Π—Π° Π΄Π° Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° Π½Π° ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ с историята Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈΡ‚Π΅ Π½Π΅ влияС Π½Π° Π½Π°ΠΉ-Π²Π°ΠΆΠ½ΠΎΡ‚ΠΎ β€” Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π½Π°ΡˆΠΈΡ‚Π΅ бизнСс процСси, всички историчСски Π΄Π°Π½Π½ΠΈ бяха ΠΈΠ·ΠΎΠ»ΠΈΡ€Π°Π½ΠΈ Π² ΠΎΡ‚Π΄Π΅Π»Π΅Π½ сСрвис с ΠΎΡ‚Π΄Π΅Π»Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠΉΡ‚ΠΎ ΡΡŠΡ‰ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π° информация Ρ‡Ρ€Π΅Π· Kafka. По Ρ‚ΠΎΠ·ΠΈ Π½Π°Ρ‡ΠΈΠ½, ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ работят с ΠΈΠ·ΠΎΠ»ΠΈΡ€Π°Π½ сСрвис, Π±Π΅Π· Π΄Π° влияят Π½Π° сСрвизитС, ΠΊΠΎΠΈΡ‚ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π°Ρ‚ Π΄Π°Π½Π½ΠΈΡ‚Π΅ ΠΏΠΎ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΡ‚Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ.

Π—Π°Π΄Π°Ρ‡Π° 4. ΠŸΠΎΠ²Ρ‚ΠΎΡ€Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° ΠΎΠΏΠ°ΡˆΠΊΠΈΡ‚Π΅ ΠΈ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³:

Π’ Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΡ‚Π΅ систСми Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½ΠΎ Π²ΡŠΠ·Π½ΠΈΠΊΠ²Π°Ρ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ ΠΈ Π³Ρ€Π΅ΡˆΠΊΠΈ с Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΎΡΡ‚Ρ‚Π° Π½Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, опашки ΠΈ външни ΠΈΠ·Ρ‚ΠΎΡ‡Π½ΠΈΡ†ΠΈ Π½Π° Π΄Π°Π½Π½ΠΈ. Π’ случая с β€žΠœΠ°Ρ€ΠΊΡƒΡβ€œ, ΠΈΠ·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ Π½Π° Ρ‚Π΅Π·ΠΈ Π³Ρ€Π΅ΡˆΠΊΠΈ Π΅ интСграцията с външни систСми. НСобходимо бСшС Π΄Π° Π½Π°ΠΌΠ΅Ρ€ΠΈΠΌ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, позволяващо ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΈ заявки ΠΏΡ€ΠΈ Π³Ρ€Π΅ΡˆΠ½ΠΈ ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€ΠΈ с Π·Π°Π΄Π°Π΄Π΅Π½ Ρ‚Π°ΠΉΠΌΠ°ΡƒΡ‚, Π±Π΅Π· Π΄Π° ΠΏΡ€Π΅ΠΊΡŠΡΠ²Π°ΠΌΠ΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π° Π½Π° ΡƒΡΠΏΠ΅ΡˆΠ½ΠΈ заявки Π² основната опашка. Π—Π° Ρ‚Π°Π·ΠΈ Ρ†Π΅Π» бСшС ΠΈΠ·Π±Ρ€Π°Π½Π° Ρ‚. Π½Π°Ρ€. концСпция β€žretry Π½Π° Π±Π°Π·Π°Ρ‚Π° Π½Π° Ρ‚Π΅ΠΌΠΈβ€œ. Π—Π° всСки основСн Ρ‚Π΅ΠΌΠΏ сС създава Π΅Π΄Π½Π° ΠΈΠ»ΠΈ ΠΏΠΎΠ²Π΅Ρ‡Π΅ retry Ρ‚Π΅ΠΌΠΈ, Π² ΠΊΠΎΠΈΡ‚ΠΎ сС отправят Π³Ρ€Π΅ΡˆΠ½ΠΈ ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡ, Π±Π΅Π· Π΄Π° сС забавя ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π° Π½Π° ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡ ΠΎΡ‚ основния Ρ‚Π΅ΠΌΠΏ. Π‘Ρ…Π΅ΠΌΠ°Ρ‚Π° Π½Π° взаимодСйствиС β€”

Β«Walking in my shoesΒ» β€” стоп, Π° Ρ‚Π΅ ΠΌΠ°Ρ€ΠΊΠΈΡ€Π°Π½ΠΈ Π»ΠΈ са?

Π—Π° Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° Ρ‚Π°ΠΊΠ°Π²Π° схСма Π½ΠΈ бСшС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ слСдното β€” Π΄Π° ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€Π°ΠΌΠ΅ Ρ‚ΠΎΠ²Π° Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ с Spring ΠΈ Π΄Π° ΠΈΠ·Π±Π΅Π³Π½Π΅ΠΌ Π΄ΡƒΠ±Π»ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΊΠΎΠ΄Π°. Π’ ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° сС Π½Π°Ρ‚ΡŠΠΊΠ½Π°Ρ…ΠΌΠ΅ Π½Π° ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, Π±Π°Π·ΠΈΡ€Π°Π½ΠΎ Π½Π° Spring BeanPostProcessor, Π½ΠΎ Ρ‚ΠΎ Π½ΠΈ сС стори излишно обСмисто. ΠΠ°ΡˆΠΈΡΡ‚ Π΅ΠΊΠΈΠΏ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈ ΠΏΠΎ-просто Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΠ΅Ρ‚ΠΎ позволява Π΄Π° сС Π²Π³Ρ€Π°Π΄ΠΈ Π² Ρ†ΠΈΠΊΡŠΠ»Π° Π½Π° Spring Π·Π° създаванС Π½Π° ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ ΠΈ Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΎ Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈ Retry Consumer-ΠΈ. ΠŸΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΡŠΡ‚ Π½Π° Π½Π°ΡˆΠ΅Ρ‚ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ прСдоставихмС Π½Π° Π΅ΠΊΠΈΠΏΠ° Π½Π° Spring, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π³ΠΎ Π²ΠΈΠ΄ΠΈΡ‚Π΅ Ρ‚ΡƒΠΊ. Броят Π½Π° Retry Consumer-ΠΈΡ‚Π΅ ΠΈ броят Π½Π° ΠΎΠΏΠΈΡ‚ΠΈΡ‚Π΅ Π½Π° всСки ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π» сС настройват Ρ‡Ρ€Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ, Π² зависимост ΠΎΡ‚ Π½ΡƒΠΆΠ΄ΠΈΡ‚Π΅ Π½Π° бизнСс процСса, ΠΈ, Π·Π° Π΄Π° всичко Π·Π°Ρ€Π°Π±ΠΎΡ‚ΠΈ, остава само Π΄Π° сС постави ΠΏΠΎΠ·Π½Π°Ρ‚Π°Ρ‚Π° Π½Π° всички Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈ Π½Π° Spring анотация org.springframework.kafka.annotation.KafkaListener.

Π’ случай Ρ‡Π΅ ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π΅Π½ΠΎ слСд всички ΠΎΠΏΠΈΡ‚ΠΈ Π·Π° ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠ΅, Ρ‚ΠΎ ΠΏΠΎΠΏΠ°Π΄Π° Π² DLT (dead letter topic) с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° Spring DeadLetterPublishingRecoverer. По исканС Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π°, Ρ€Π°Π·ΡˆΠΈΡ€ΠΈΡ…ΠΌΠ΅ Ρ‚Π°Π·ΠΈ функционалност ΠΈ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ…ΠΌΠ΅ ΠΎΡ‚Π΄Π΅Π»Π΅Π½ ΡΡŠΡ€Π²ΠΈΡ, ΠΊΠΎΠΉΡ‚ΠΎ позволява Π΄Π° сС ΠΏΡ€Π΅Π³Π»Π΅ΠΆΠ΄Π°Ρ‚ ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡΡ‚Π°, ΠΏΠΎΠΏΠ°Π΄Π½Π°Π»ΠΈ Π² DLT, stackTrace, traceId ΠΈ Π΄Ρ€ΡƒΠ³Π° ΠΏΠΎΠ»Π΅Π·Π½Π° информация Π·Π° тях. ОсвСн Ρ‚ΠΎΠ²Π°, Π΄ΠΎΠ±Π°Π²ΠΈΡ…ΠΌΠ΅ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΈ Π°Π»Π°Ρ€ΠΌΠΈ Π·Π° всички DLT Ρ‚ΠΎΠΏΠΈΡ†ΠΈ, ΠΈ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°, ΠΏΠΎ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΠΎ, появата Π½Π° ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ Π² DLT Ρ‚ΠΎΠΏΠΈΠΊΠ° Π΅ ΠΏΠΎΠ²ΠΎΠ΄Π° Π·Π° Ρ€Π°Π·Π³Π»Π΅ΠΆΠ΄Π°Π½Π΅ ΠΈ сигнализиранС Π½Π° Π΄Π΅Ρ„Π΅ΠΊΡ‚. Π’ΠΎΠ²Π° Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΡƒΠ΄ΠΎΠ±Π½ΠΎ β€” ΠΏΠΎ ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° Ρ‚ΠΎΠΏΠΈΠΊΠ° Π²Π΅Π΄Π½Π°Π³Π° Ρ€Π°Π·Π±ΠΈΡ€Π°ΠΌΠ΅ Π½Π° ΠΊΠΎΠΉ Π΅Ρ‚Π°ΠΏ ΠΎΡ‚ процСса Π΅ възникнала ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°, ΠΊΠΎΠ΅Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ускорява Ρ‚ΡŠΡ€ΡΠ΅Π½Π΅Ρ‚ΠΎ Π½Π° ΠΊΠΎΡ€Π΅Π½Π½Π°Ρ‚Π° ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°.

Β«Walking in my shoesΒ» β€” стоп, Π° Ρ‚Π΅ ΠΌΠ°Ρ€ΠΊΠΈΡ€Π°Π½ΠΈ Π»ΠΈ са?

БъвсСм наскоро Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Ρ…ΠΌΠ΅ интСрфСйс, позволяващ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°Π½Π΅ Π½Π° ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡ ΠΎΡ‚ Π½Π°ΡˆΠ°Ρ‚Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°, слСд отстраняванС Π½Π° ΠΏΡ€ΠΈΡ‡ΠΈΠ½ΠΈΡ‚Π΅ ΠΈΠΌ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° работоспособността Π½Π° Π²ΡŠΠ½ΡˆΠ½Π°Ρ‚Π° систСма) ΠΈ, Ρ€Π°Π·Π±ΠΈΡ€Π° сС, Π·Π°Π²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΡΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΈΡ Π΄Π΅Ρ„Π΅ΠΊΡ‚ Π·Π° Π°Π½Π°Π»ΠΈΠ·. Π’ΡƒΠΊ сС ΠΎΠΊΠ°Π·Π°Ρ…Π° ΠΏΠΎΠ»Π΅Π·Π½ΠΈ Π½Π°ΡˆΠΈΡ‚Π΅ self-Ρ‚ΠΎΠΏΠΈΡ†ΠΈ, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Π΄Π° Π½Π΅ сС рСстартира Π΄ΡŠΠ»Π³Π°Ρ‚Π° Π²Π΅Ρ€ΠΈΠ³Π° Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°, ΠΌΠΎΠΆΠ΅ Π΄Π° я рСстартирамС ΠΎΡ‚ нСобходимия Π΅Ρ‚Π°ΠΏ.

Β«Walking in my shoesΒ» β€” стоп, Π° Ρ‚Π΅ ΠΌΠ°Ρ€ΠΊΠΈΡ€Π°Π½ΠΈ Π»ΠΈ са?

Експлоатация Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°

ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π²Π΅Ρ‡Π΅ Π΅ Π² ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈΠ²Π½Π° Сксплоатация, всСки Π΄Π΅Π½ ΠΏΡ€Π°Π²ΠΈΠΌ доставки ΠΈ ΠΎΡ‚Π³Ρ€ΡƒΠ·ΠΊΠΈ, ΡΠ²ΡŠΡ€Π·Π²Π°ΠΌΠ΅ Π½ΠΎΠ²ΠΈ Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚Π΅Π»Π½ΠΈ Ρ†Π΅Π½Ρ‚Ρ€ΠΎΠ²Π΅ ΠΈ ΠΌΠ°Π³Π°Π·ΠΈΠ½ΠΈ. Π’ Ρ€Π°ΠΌΠΊΠΈΡ‚Π΅ Π½Π° ΠΏΠΈΠ»ΠΎΡ‚Π° систСмата Ρ€Π°Π±ΠΎΡ‚ΠΈ с Π³Ρ€ΡƒΠΏΠΈ стоки β€œΠ’ΡŽΡ‚ΡŽΠ½β€ ΠΈ β€œΠžΠ±ΡƒΠ²ΠΊΠΈβ€.

ЦСлият Π½ΠΈ Π΅ΠΊΠΈΠΏ участва Π² ΠΏΡ€ΠΎΠ²Π΅ΠΆΠ΄Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΏΠΈΠ»ΠΎΡ‚ΠΈ, Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€Π° Π²ΡŠΠ·Π½ΠΈΠΊΠ²Π°Ρ‰ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ ΠΈ ΠΏΡ€Π΅Π΄Π»Π°Π³Π° подобрСния Π½Π° нашия ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ ΠΎΡ‚ подобряванС Π½Π° Π»ΠΎΠ³ΠΎΠ²Π΅Ρ‚Π΅ Π΄ΠΎ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ Π² процСситС.

Π—Π° Π΄Π° Π½Π΅ повтарямС Π½Π°ΡˆΠΈΡ‚Π΅ Π³Ρ€Π΅ΡˆΠΊΠΈ, всички случаи, ΠΎΡ‚ΠΊΡ€ΠΈΡ‚ΠΈ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° ΠΏΠΈΠ»ΠΎΡ‚Π°, сС отразяват Π² Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€Π°Π½ΠΈΡ‚Π΅ тСстовС. НаличиСто Π½Π° ΠΌΠ½ΠΎΠ³ΠΎ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΈ тСстовС ΠΈ ΡŽΠ½ΠΈΡ‚-тСстовС позволява Π΄Π° ΠΏΡ€ΠΎΠ²Π΅ΠΆΠ΄Π°ΠΌΠ΅ рСгрСсионно тСстванС ΠΈ Π΄Π° пускамС хотфикси Π±ΡƒΠΊΠ²Π°Π»Π½ΠΎ Π² Ρ€Π°ΠΌΠΊΠΈΡ‚Π΅ Π½Π° няколко часа.

Π‘Π΅Π³Π° ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠ°Π²Π°ΠΌΠ΅ Π΄Π° Ρ€Π°Π·Π²ΠΈΠ²Π°ΠΌΠ΅ ΠΈ ΡƒΡΡŠΠ²ΡŠΡ€ΡˆΠ΅Π½ΡΡ‚Π²Π°ΠΌΠ΅ Π½Π°ΡˆΠ°Ρ‚Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° ΠΈ постоянно сС сблъсквамС с Π½ΠΎΠ²ΠΈ прСдизвикатСлства. Ако Π²ΠΈ интСрСсува, ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° сподСлим Π½Π°ΡˆΠΈΡ‚Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π² слСдващитС статии.

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

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС със Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS ΠΈ VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС със Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS ΠΈ VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster