Amua ni kikomo kipi kati ya vitatu umefikia kabla ya kununua kipengele kikubwa zaidi. Kiini kimoja kimejaa wakati vingine havifanyi kazi kinaelekeza kwa kazi ya usimbaji kwa mtiririko. Viini vyote vimejaa wakati wa uhamishaji vinaelekeza kwa uwezo wa jumla. CPU ya chini na idadi inayoongezeka ya utumaji upya inaelekeza kwenye njia. Kila moja ina hatua ya kwanza tofauti, na ni moja tu inayotatuliwa na kipengele kikubwa zaidi.

Vikomo vitatu, jedwali moja, marekebisho matatu

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

Soma mistari kama utambuzi, sio hatua. Uzi mmoja kwa 100% wakati mingine haifanyi kazi ni matokeo ya kawaida zaidi kwenye lango linalobeba handaki moja kubwa, kwa sababu usimbaji wa mtiririko huo unaendeshwa kwenye kiini kimoja. Viini vyote vikiwa na shughuli wakati wa uhamishaji inamaanisha mashine tayari inafanya kazi nyingi iwezavyo. CPU ya chini na utumaji upya unaoongezeka inamaanisha kichakataji kinasubiri mtandao unaoendelea kudondosha data.

Virekebishe kwa mpangilio huo wa ushahidi. Kusambaza mitiririko kwa wafanyakazi kunasaidia kesi ya kwanza na hakifanyi chochote kwa ya pili. Kipengele kikubwa zaidi kinasaidia ya pili na kinapoteza pesa kwa ya kwanza. Marekebisho ya MTU au upotevu ndiyo pekee yanayogusa ya tatu. Kununua uwezo kabla ya kujua uko kwenye mstari gani ni toleo la gharama la kukisia.

Tenganisha uzi uliobanwa na mwenyeji mwenye shughuli

Anza na matumizi kwa kila kiini, ili kiini kimoja kilichobanwa kisiweze kujificha ndani ya wastani. Uendeshaji mmoja wakati wa uhamishaji unaonyesha kama mzigo ni tambarare au wenye vilele. Maumbo yote mawili yanatoa taarifa, na wasifu wenye vilele mara nyingi humaanisha kuwa dirisha la sampuli lilikamata shughuli ya kipanga badala ya usimbaji.

mpstat -P ALL 1 5

Husisha kiini chenye shughuli na mchakato, kisha na uzi. Uendeshaji wa ufuatiliaji hapa chini hushikilia pamoja uzi wa mzazi na mtoto, jambo ambalo ni muhimu wakati daemon inagawika kwa kila muunganisho:

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

Usimbaji wa kerneli hauonekani kamwe kwenye kihesabu cha mchakato wa nafasi ya mtumiaji. Sampuli za uzi kando na ulinganishe mwonekano huo na hesabu za mchakato:

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

Soma vihesabu vya soketi mwisho, kwa sababu ndivyo vinavyoamua kama CPU zaidi itasaidia hata kidogo. Utumaji upya unaoongezeka wakati CPU ni tambarare si tatizo la kichakataji. Endeleza uhamishaji ukiwa una sampuli, vinginevyo namba zinaelezea mashine isiyofanya kazi:

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

Uhamishaji uliodhibitiwa, ulioendeshwa mara mbili

Vihesabu visivyofanya kazi havithibitishi chochote, na kipimo dhidi ya kituo cha mwisho cha nasibu huthibitisha kidogo sana. Chagua mteja mmoja, lengwa moja na uhamishaji mmoja unaowakilisha unaoruhusiwa kuendesha, kisha rekodi upitishaji na ucheleweshaji wa mwingiliano katika dirisha moja. Lango linaweza kujaa wakati nakala kubwa bado inakamilika, na mkunjo wa ucheleweshaji ndio watumiaji wanahisi kweli. Andika uhamishaji, idadi ya wateja na toleo la daemon kando ya namba.

Rudia uendeshaji na mitiririko kadhaa sambamba. Kuongezeka kwa mitiririko kunaashiria madirisha kwa mtiririko; kubaki tambarare na kiini kimoja kilichobanwa kunaashiria uchakataji.

Kisha rudia mara moja zaidi ukiwa umezimua mizigo ya kazi ya hiari. Nakala rudufu, kisafirishaji cha kumbukumbu au hifadhidata kwenye mwenyeji huyo huyo vinaweza kutoa wastani wenye shughuli ambao hauna uhusiano wowote na handaki. Ikiwa CPU bado imebanwa wakati mwenyeji ni mtulivu kwa upande mwingine, ushahidi unaelekeza kwenye mchakato wa VPN. Ikiwa inapungua, ulikuwa unapima jirani, na lango halikuwa tatizo kamwe.

Ondoa njia kabla ya kununua maunzi

Utumaji upya unaoongezeka, dirisha la msongamano linalopungua na muda wa kwenda na kurudi unaoongezeka vyote vinaelekeza mbali na kichakataji. Linganisha MTU ya handaki na MTU ya njia, angalia kiungo cha msingi kwa upotevu, na thibitisha kuwa kiungo cha juu cha mteja mwenyewe si kikomo. Lango kubwa zaidi halirekebishi kiungo kinachodondosha pakiti, na watumiaji huelezea hitilafu zote mbili kwa maneno yale yale. Kihesabu cha utumaji upya huzitenganisha kwa dakika.

Kwenye seva pepe, ongeza vipimo vya mtoa huduma kwa vile vya mgeni. Muda ulioibiwa ndio jinsi uuzaji wa kupindukia unavyoonekana ndani ya mgeni, na hakuna upangaji ndani ya mgeni unaouondoa. Vihesabu vya mgeni haviwezi kuona mwenyeji, kwa hivyo grafu safi ya mgeni si uthibitisho wa mwenyeji mzima.

Badiliko moja, kipimo kimoja

Chagua dhana ambayo ushahidi unaiunga mkono, kisha badilisha mpangilio mmoja ulioungwa mkono: idadi ya wafanyakazi, chaguo la upakuaji lililoandikwa, au ukubwa wa kipengele. OpenVPN huchapisha mwongozo wa utatuzi wa matatizo ya utendaji kuhusu mgawanyiko huo kati ya uchakataji na usafirishaji: Utatuzi wa matatizo ya utendaji ya OpenVPN.

Thibitisha kuwa chaguo la upakuaji linafanya kazi kweli badala ya kuamini bendera, kisha endesha tena uhamishaji huo huo na linganisha sawa na sawa. Hiyo ndiyo njia pekee ya kutofautisha uboreshaji wa kweli na mchana mtulivu. Weka kituo cha ukaguzi unachoweza kurejesha, kwa sababu katika badiliko la pili watu hupoteza ufuatiliaji wa kipi kilisaidia. Kigezo kimoja kwa uendeshaji ni polepole kwa siku moja na kikali kwa mwezi mmoja.

Usidhoofishe uthibitishaji au seti ya usimbaji ili grafu ionekane bora. Ikiwa CPU bado haifuati dalili, rudi kwenye ukaguzi wa njia na programu badala ya kupandisha kwa kukisia.

Makala zinazohusiana