Kattaroq instans sotib olishdan oldin uchta chegaradan qaysinisiga yetganingizni aniqlang. Bitta yadro to'liq band, qolganlari bo'sh bo'lsa, bu oqim bo'yicha kripto ishiga ishora qiladi. Uzatish paytida barcha yadrolar to'yingan bo'lsa, bu umumiy quvvatga ishora qiladi. Past CPU va ortib borayotgan qayta uzatishlar soni yo'lga ishora qiladi. Har birining birinchi qadami boshqacha va faqat bittasi kattaroq instans bilan hal qilinadi.

Uch chegara, bitta jadval, uchta tuzatish

LimitReading during a transferFirst move
Single threadone core near 100%, siblings idlespread flows across workers
Aggregate CPUevery core busy, load average climbscapacity, or less work per byte
Path or providerlow CPU, retransmits or steal time highMTU, loss, host contention

Qatorlarni bosqich emas, diagnostika sifatida o'qing. Bitta oqim 100% bo'lib, qolganlari bo'sh bo'lsa, bu bitta katta tunnel olib yuruvchi shlyuzda eng ko'p uchraydigan natija, chunki o'sha oqimning shifrlanishi bitta yadroda ishlaydi. Uzatish paytida barcha yadrolar band bo'lsa, mashina allaqachon qo'lidan kelganicha ishlayapti. Past CPU va ortib borayotgan qayta uzatishlar protsessor doimiy ma'lumot yo'qotadigan tarmoqni kutayotganini bildiradi.

Ularni dalillar tartibida tuzating. Oqimlarni ishchilarga taqsimlash birinchi holatga yordam beradi va ikkinchisiga hech narsa qilmaydi. Kattaroq instans ikkinchisiga yordam beradi va birinchisida pulni behuda sarflaydi. MTU yoki yo'qotishni tuzatish faqat uchinchisiga tegadi. Qaysi qatorda ekaningizni bilmasdan quvvat sotib olish taxminning qimmat versiyasi.

Qotirilgan oqimni band xostdan ajrating

Har bir yadro bo'yicha foydalanishdan boshlang, shunda qotirilgan bitta yadro o'rtacha ichida yashirina olmaydi. Uzatish paytidagi bitta ishga tushirish yuk tekismi yoki cho'qqilimi ko'rsatadi. Ikkala shakl ham ma'lumot beradi, cho'qqili profil esa ko'pincha namuna olish oynasi shifrlash o'rniga rejalashtiruvchi faoliyatini ushlaganini bildiradi.

mpstat -P ALL 1 5

Band yadroni jarayonga, so'ng oqimga bog'lang. Quyidagi kuzatuv ishga tushirishi ota va bola oqimlarini birga ushlab turadi, bu demon har bir ulanish uchun shoxlanganda muhim:

pidstat -u -t -p $(pgrep -f 'openvpn|wireguard|ipsec') 1 10

Yadro kriptografiyasi hech qachon foydalanuvchi maydoni jarayon hisoblagichida ko'rinmaydi. Oqimlarni alohida namunalang va bu ko'rinishni jarayon hisobi bilan solishtiring:

top -H -b -n 1 | head -20

Socket hisoblagichlarini eng oxirida o'qing, chunki ko'proq CPU umuman yordam beradimi-yo'qmi shuni ular hal qiladi. CPU tekis bo'lganda qayta uzatishlarning o'sishi protsessor muammosi emas. Namuna olish paytida uzatishni ishlab turing, aks holda raqamlar bo'sh turgan mashinani tasvirlaydi:

ss -ti | grep -E 'retrans|cwnd|rtt'

Nazoratli uzatish, ikki marta

Bo'sh hisoblagichlar hech narsani isbotlamaydi, tasodifiy oxirgi nuqtaga qarshi benchmark juda oz isbotlaydi. Bitta mijoz, bitta manzil va ishga tushirishga ruxsat berilgan bitta vakil uzatishni tanlang, so'ng o'sha oynada o'tkazuvchanlik va interaktiv kechikishni yozib oling. Shlyuz to'yinishi mumkin, katta nusxa hali tugamayotganda, va foydalanuvchilar haqiqatan his qiladigan narsa kechikish egri chizig'idir. Uzatish, mijozlar soni va demon versiyasini raqamlar yoniga yozing.

Ishga tushirishni bir necha parallel oqim bilan takrorlang. Oqimlar bo'ylab o'sish har bir oqim uchun oynalarga ishora qiladi; bitta yadro qotirilgan holda tekis qolish ishlov berishga ishora qiladi.

So'ng qo'shimcha ish yuklamalarini to'xtatib yana bir marta takrorlang. O'sha xostdagi zaxira nusxa, jurnal yuboruvchi yoki ma'lumotlar bazasi tunnellarga aloqasi bo'lmagan band o'rtacha yaratishi mumkin. Xost boshqa jihatdan jim bo'lsa-da CPU hali ham qotirilgan bo'lsa, dalillar VPN jarayoniga ishora qiladi. Agar u pasaysa, siz qo'shnini o'lchagan edingiz va shlyuz hech qachon muammo bo'lmagan.

Uskuna sotib olishdan oldin yo'lni istisno qiling

Ortib borayotgan qayta uzatishlar, torayotgan tiqilinch oynasi va ortib borayotgan borish-kelish vaqti barchasi protsessordan uzoqqa ishora qiladi. Tunnel MTU ni yo'l MTU bilan solishtiring, asosiy havolani yo'qotishga tekshiring va mijozning o'z yuqori kanali chegara emasligiga ishonch hosil qiling. Kattaroq shlyuz paketlarni tashlaydigan havolani tuzatmaydi, va foydalanuvchilar ikkala nosozlikni bir xil so'zlar bilan tasvirlaydi. Qayta uzatish hisoblagichi ularni bir necha daqiqada ajratadi.

Virtual serverda provayder ko'rsatkichlarini mehmonning o'z ko'rsatkichlariga qo'shing. O'g'irlangan vaqt — ortiqcha sotishning mehmon ichida qanday ko'rinishidir va mehmon ichidagi hech qanday sozlash uni olib tashlamaydi. Mehmon hisoblagichlari xostni ko'rmaydi, shuning uchun toza mehmon grafigi sog'lom xostning isboti emas.

Bitta o'zgarish, bitta o'lchov

Dalillar qo'llab-quvvatlaydigan gipotezani tanlang, so'ng aniq bitta qo'llab-quvvatlanadigan sozlamani o'zgartiring: ishchilar soni, hujjatlashtirilgan yukni tushirish opsiyasi yoki instans o'lchami. OpenVPN ishlov berish va tashish o'rtasidagi xuddi shu bo'linish haqida unumdorlik muammolarini bartaraf etish qo'llanmasini nashr etadi: OpenVPN unumdorlik muammolarini bartaraf etish.

Bayroqqa ishonish o'rniga yukni tushirish opsiyasi haqiqatan faol ekaniga ishonch hosil qiling, so'ng xuddi shu uzatishni qayta ishga tushiring va o'xshashni o'xshash bilan solishtiring. Haqiqiy yaxshilanishni sokin tushdan ajratishning yagona yo'li shu. Tiklash mumkin bo'lgan nazorat nuqtasini saqlang, chunki ikkinchi o'zgarishda odamlar qaysi biri yordam berganini yo'qotadi. Har bir ishga tushirishda bitta o'zgaruvchi bir kunga sekin va bir oyga tez.

Grafik yaxshiroq ko'rinishi uchun autentifikatsiya yoki shifrlar to'plamini zaiflashtirmang. Agar CPU hali ham simptomga ergashmasa, taxmin asosida yangilash o'rniga yo'l va dastur tekshiruvlariga qayting.

O'xshash maqolalar