
GitHub-ի օգոստոսի 17-ի խափանումը՝ 7 ժամ 47 րոպե և հզորության, ոչ կոդի, խնդիր
GitHub-ը հրապարակել է օգոստոսի 17-ի խափանման մասին թարմացումը. 7 ժամ 47 րոպե տևած միջադեպը դադարեցրել է github.com-ը, նույնականացումը, Actions-ը, API-ները և Copilot-ը, և ընկերությունը դա անվանում է հզորության անբավարարություն։
Օգոստոսի 17-ին GitHub-ը կրել է խափանում, որը տևել է 7 ժամ 47 րոպե և խաթարել է github.com-ը, նույնականացումը, GitHub Actions-ը, API-ները, pull request-ները, issue-ները և Copilot-ը ամբողջ աշխարհի ծրագրավորողների ու կազմակերպությունների համար։
Դա ընկերության երկրորդ նշանակալի միջադեպն էր օգոստոսին՝ օգոստոսի 6-ի Actions-ի ձախողումից հետո։ GitHub-ը հուսալիության վերաբերյալ թարմացումներ էր հրապարակել նաև մարտին ու ապրիլին. ընկերության խոսքով՝ նոր միջադեպերը ցույց են տալիս, որ այդ աշխատանքը պետք է արագանա։
Ինչ տեղի ունեցավ
Հետաքննությունը պարզել է, որ խափանումը սկսվել է այն պահին, երբ թրաֆիկը հասել է նոր գագաթնակետի, իսկ ԱՄՆ-ի կենտրոնական տվյալների կենտրոնում գտնվող ենթակառուցվածքի կրիտիկական բաղադրիչը չի կարողացել մասշտաբավորվել դրա հետ։ Առաջացած հզորության ճնշումը տարածվել է GitHub-ի համակարգերում՝ առաջացնելով նույնականացման ձախողումներ և միաժամանակ մի քանի ծառայությունների խափանում։
Վերականգնումը պահանջել է մի քանի համակարգված քայլ. թիմերը վերաուղղորդել են թրաֆիկը, մեկուսացրել տուժած ենթակառուցվածքը և ծառայությունները վերականգնել փուլերով։ Ծառայությունների մեծ մասը վերադարձել է նույն օրը, սակայն Copilot-ի որոշ ծառայություններ ավելի երկար դադարել էին. այնտեղ առաջացած սխալները հաճախորդի կողմում առաջացրել են կրկնակի հարցումների ցիկլ, որը վերականգնման ընթացքում ավելացրել է թրաֆիկը։ Մանրամասն տեխնիկական ժամանակագրությունը հրապարակված է արմատական պատճառի վերլուծության մեջ։
Հզորություն, ոչ կոդ
GitHub-ի խոսքով՝ խափանումներից ոչ մեկը չի առաջացել կոդի կամ կոնֆիգուրացիայի փոփոխությամբ. երկուսն էլ հզորության անբավարարություն էին, երբ կրիտիկական բաղադրիչները չէին մասշտաբավորվել մինչև պահանջարկի գերազանցումը։ Ապրիլից ի վեր հարթակի ամսական commit-ների թիվը 1,4 միլիարդից հասել է 2,9 միլիարդի։ Ընկերությունն ավելացրել է ավելի քան 3 միլիոն CPU միջուկ, 120 պետաբայթ արագընթաց պահոց և զգալի ցանցային հզորություն։ Այժմ Azure-ը սպասարկում է հարթակի ծանրաբեռնվածության մոտ 58%-ը և բոլոր Git գործողությունների կեսը՝ մայիսի 12%-ի դիմաց։
Առջևում կատարվելիք աշխատանքը
Առաջնահերթություններն են հզորության ավելացումը, արդյունավետության բարձրացումը և ճարտարապետական խոչընդոտների վերացումը։ Հաջորդ նշաձողը ճարտարապետությունն է, որը ընթերցման հզորությունը մեծացնում է ընթերցողների թվին համաչափ՝ հնարավորություն տալով անսահմանափակ ընթերցման գործողություններ. այն կներդրվի փուլերով՝ սկսած ամենամեծ monorepo-ներից։ Ընկերությունը նաև մեկուսացնում է կրիտիկական համակարգերը, հեռացնում դրանց միջև ընդհանուր կախվածությունները և ներդրում է ավելի ուժեղ թեստավորման ու դիտարկելիության մեջ։
Օգոստոսի միջադեպերից հետո երկու անհապաղ փոփոխություն է կատարվել. ծառայությունների միջև փոխազդեցություններում կրկնակի հարցումների միասնական սահմանափակումներ, բյուջեներ և փոփոխական ժամանակային սահմաններ՝ փոթորիկները կանխելու համար, և ցածր առաջնահերթության CPU-ի ու հիշողության ազդանշանների վերանայում։
SiTech — AI-ով հզորացված վեբ մշակում
Ստեղծում ենք արագ ու ժամանակակից կայքեր և AI-ը ներդնում իրական բիզնես գործընթացներում։ Ունե՞ք նախագիծ կամ հարց։ Ուրախ կլինենք օգնել։