kizaket.am-ի համակարգում տեղի ունեցած անսպասելի խափանումը

Հարուցումների և հարցումների արագ մշակման գործընթացում առաջնային նշանակություն ունի համակարգի անխափան և արագաշարժ աշխատանքը։ Վերջերս տեղի ունեցած դեպքի համատեքստում, երբ kizaket.am-ի համակարգը շատ ուշացրեց պատասխանը, ցանկանում եմ մանրամասն ներկայացնել խնդրի բնույթը, դրա հնարավոր պատճառները և ձեռնարկված լուծումները։

Այսպիսի խափանումները կարող են առաջանալ տարբեր հանգամանքների արդյունքում։ Օրինակ, երբ սպասարկման համակարգի վրա միաժամանակ բազմաթիվ հարցումներ են ստանում, սերվերի բեռնվածությունը կարող է գերազանցել իր նորմալ աշխատանքային հզորությունը։ Սա կարող է հանգեցնել մշակման և պատասխանների տրամադրման արագության նվազման։

Մյուս հնարավոր պատճառը ծրագրային ապահովման մեջ առկա սխալներն են։ Ծրագրային կոդում առկա տրամաբանական սխալը կարող է խանգարել տվյալների ճիշտ մշակմանը և դրանք ճիշտ հաջորդականությամբ կատարելուն։ Այսպիսի սխալները կարող են լինել ծրագրավորման ընթացքում աննկատ մնացած կամ ավելի ուշ հայտնաբերված։

Այս խափանման դեպքում մենք անհապաղ սկսեցինք խնդրի վերլուծությունը։ Նախ, սերվերի ռեսուրսների օգտագործումը ստուգվեց՝ համոզվելու համար, որ խափանումը չի պայմանավորված սերվերի ֆիզիկական ռեսուրսների սահմանափակումներով։ Երբ սերվերի բեռնվածությունը նորմալ էր, մենք կենտրոնացանք ծրագրային կոդի վրա։

Մեր ծրագրավորողների թիմը սերվերային կողմում կատարեց մանրակրկիտ վերլուծություն՝ օգտագործելով մանրամասն լոգերի։ Այս վերլուծության արդյունքում հայտնաբերվեց, որ խնդրի հիմնական պատճառը ծրագրային կոդում առկա տրամաբանական սխալ էր, որը հանգեցնում էր տվյալների մշակման ընթացքում անսպասելի կանգառների։

Սխալը վերացվել է, և համակարգը վերականգնվեց։ Այնուհետև կատարվեցին լրացուցիչ ստուգումներ՝ համոզվելու համար, որ խափանումը կրկին չի տեղի ունենա։ Այս դեպքից դուրս գալով, մենք կատարում ենք պարբերական ծրագրային աուդիտներ և կատարում ենք բարելավումներ՝ համակարգի կայունությունը և արագությունը բարձրացնելու համար։