გვირაბი მთელი დღე სტაბილურია და შემდეგ იწყვეტა, როცა დიდი ატვირთვა იწყება. ინტერაქტიული მოთხოვნები პირველად ჩერდება, კლიენტი დროის ამოწურვას აცნობებს და კავშირი ბრუნდება, როცა გადაცემა სრულდება. ეს სურათი რიგსა და დამუშავებაზე მიუთითებს და არა იმაზე, რომ დისტანციური სერვერი გამორთულია, რადგან სერვერს დროულად პასუხის გაცემის შანსი არასოდეს მიუღია. ამოცანაა ამის რეპროდუქცია კონტროლირებული დატვირთვის ქვეშ და სწორი მრიცხველების წაკითხვა.

შეცვალეთ ერთი ცვლადი თითო გაშვებაზე და საბოლოო წერტილი უცვლელად დაიტოვეთ.

ააგეთ განმეორებადი დატვირთვის შედარება

ჩაწერეთ საწყისი ხაზი, როცა ბმული უმოქმედოა: ორმხრივი დრო, რამდენიმე აპლიკაციის მოთხოვნა და თავად გვირაბის მოვლენების ჟურნალი. შემდეგ დაიწყეთ ცნობილი ზომის ატვირთვა და გაიმეორეთ ზუსტად იგივე გაზომვები მისი მიმდინარეობისას. საბოლოო წერტილი, კლიენტი და ტესტის დანიშნულება უცვლელად დატოვეთ, რადგან ორი მათგანის ერთდროულად შეცვლა არაფერს გეუბნებათ.

ყურადღება მიაქციეთ, რომელი მოვლენა ჩნდება პირველი. ნებისმიერ შეცდომამდე მზარდი ორმხრივი დრო რიგზე მიუთითებს; მყარი დროის ამოწურვა სტაბილური დაყოვნებით სხვა რამეზე მიუთითებს, მაგალითად გასაღებების განახლებაზე ან ანგარიშზე მოქმედებაზე. ორი სურათი განსხვავებულ შემდეგ ნაბიჯებამდე მიდის. ჩაწერეთ დაკვირვება, სანამ რამეს შეცვლით.

შეინახეთ გამოსავალი დროის ნიშნებით, რათა დატვირთული და უმოქმედო გაშვებები სტრიქონობრივად შედარდეს.

წაიკითხეთ რიგი და არა სიჩქარე

მომხმარებლის ბმულები პაკეტებს პროვაიდერის აღჭურვილობაში ბუფერავს და სავსე ატვირთვის რიგი ყველაფერს აყოვნებს, მათ შორის გვირაბს ცოცხლად რომ ინახავს პატარა საკონტროლო პაკეტებს. მაღალ რიცხვს რომ იძლევა სიჩქარის ტესტი, ცოტას ამბობს ამ დაყოვნებაზე, ამიტომ უმოქმედო ბმულზე ტესტი გადის, ხოლო გაჯერებული ბმული იშლება.

ping -c 20 -i 0.2 203.0.113.10
mtr -rwc 20 203.0.113.10
tc -s qdisc show dev eth0
ss -ti dst 203.0.113.10
nstat -az | grep -E 'Retrans|Timeout'

შეადარეთ დატვირთვის დროს დაყოვნების რიცხვები უმოქმედო მდგომარეობისას. ნახტომი ათეული მილიწამიდან ასეულებამდე, პაკეტების დაკარგვის გარეშე, რიგია; დაკარგვა სტაბილური დაყოვნებით სხვა გაუმართაობაზე მიუთითებს.

შეამოწმეთ მოწყობილობა და საკონტროლო გზა

დაშიფვრა და გადაგზავნა პროცესორის დროს მოითხოვს და პატარა როუტერმა ან სითბოთი შეზღუდულმა ლეპტოპმა შეიძლება პაკეტები ჩამოაგდოს დაკავების დროს. დააკვირდით საერთო დატვირთვას და არა ერთი პროცესის პროცენტს, რადგან ბირთვში გადაგზავნა და წყვეტების დამუშავება იქ არ ჩნდება, სადაც ხალხი ჩვეულებრივ იყურება.

uptime
mpstat -P ALL 1 3
dmesg | grep -i -E 'thermal|throttl'
journalctl -u openvpn-server@server --since '10 min ago' | tail -20

კლიენტის დროის ამოწურვა შეიძლება დაემთხვეს დაგეგმილ გასაღებების განახლებას ან სესიის პოლიტიკის მოვლენას. მოვლენების რიგისთვის წაიკითხეთ თავად კლიენტის ჟურნალი და არა მხოლოდ აპლიკაციის შეცდომის შეტყობინება.

შეცვალეთ ერთი რამ და გაიმეორეთ

სადაც პლატფორმა მხარს უჭერს, შეზღუდეთ ატვირთვის სიხშირე ან მასობრივი ტრაფიკი ინტერაქტიულ ტრაფიკზე დაბლა დაახარისხეთ, რათა რიგი არასოდეს აივსოს. შემდეგ გაიმეორეთ იგივე დატვირთვა და შეადარეთ იგივე სამი რიცხვი, როგორც ადრე. ცვლილება, რომელიც სიჩქარის ტესტს აუმჯობესებს, მაგრამ დროის ამოწურვას ტოვებს, არაფერი გამოუსწორებია.

დროის ლიმიტების ყველგან აწევა და დაშიფვრის შესუსტება ის ორი ცვლილებაა, რომლებიც სიმპტომს აქრობენ იმ საზღვრის გამოვლენის გარეშე, რომელიც ჩავარდა. არც ერთი მათგანი შეკეთება არ არის. ორივე მარცხს უფრო გვიან გადაიტანს, სადაც მისი მიკუთვნება უფრო რთულია.

დაასრულეთ ახალი მოთხოვნისა და იმ ხელახალი დაკავშირების ქცევის ტესტით, რომელზეც მომხმარებელი ნამდვილად ეყრდნობა. მდგრადობა იმ დატვირთვის ქვეშ, რომელმაც საჩივარი გამოიწვია, ერთადერთი შედეგია, რომლის ჩაწერაც ღირს.

დაკავშირებული სტატიები