Tijaabinta Culayska API ee Ayaxa

Tijaabinta Culayska API ee Ayaxa

Tijaabinta Culayska API ee Ayaxa: Hordhac

Waxay u badan tahay inaad xaaladdan hore ugu jirtay: waxaad qortaa kood wax qabta, tusaale ahaan meesha ugu dambaysa. Waxaad tijaabinaysaa bartaada dhamaadka adoo isticmaalaya Boostada ama hurdo la'aanta, wax walbana si fiican ayey u shaqeeyaan. Waxaad u gudbisaa barta ugu dambeysa horumariyaha-dhinaca macmiilka, kaas oo markaa cunaya API oo geeyaa codsiga. Laakin markaa, API-gu wuu guuldarreeyaa marka isticmaalayaashu adeegsadaan abka.

Tani waxay noqon kartaa xaalad aad looga xumaado in lagu jiro, iyada oo aan lagu xusin kharashka ganacsiga. Waa sababta ay horumariyayaashu software-ku u fuliyaan tijaabooyin kala duwan oo ku saabsan nidaamyada softiweerka si loo hubiyo inay u fuliyaan sidii la filayay. API-yadu kama duwana. Kahor inta aan la dirin, waa in aad sameyso ugu yaraan imtixaanada waxqabadka iyo imtixaanada amniga.

Imtixaanada waxqabadka waxa loo qaybin karaa imtixaanada shaqaynta iyo imtixaanada culayska. Imtixaanada shaqayntu waa waxa aad inta badan u isticmaasho Boostada ama hurdo la'aanta. Waxay hubiyaan in API-gaagu u shaqeeyo sidaad filayso. Tijaabooyinka culeyska, dhanka kale, waxay aad uga walaacsan yihiin sida API-gaagu uu ula shaqeeyo isticmaalka adduunka dhabta ah iyo culeyska ugu sarreeya, taasina waa waxa maqaalkani ku saabsan yahay. Aynu si faahfaahsan u eegno tijaabooyinka culeyska.

Waa maxay Tijaabinta Culayska API?

Tijaabada culeyska API waa nooc ka mid ah horumarinta tijaabinta ay isticmaalaan si ay ugu ekaysiiyaan culeyska caadiga ah iyo kuwa ugu sarreeya ee dhibcaha dhammaadka. Tijaabada noocan ahi waxay u ogolaataa horumariyayaashu inay qiimeeyaan waxqabadka aduunka dhabta ah ee API ka hor inta aan la dirin. Waxay ka caawisaa inay aqoonsadaan awoodda hawleed ee ugu badan ee nidaamka, cilad-xumada haddii ay jiraan, iyo hoos u dhaca waxqabadka. Tijaabooyinka culeyska API waxaa inta badan la sameeyaa iyadoo la abuurayo isticmaaleyaal muuqaal ah ka dibna loo isticmaalo si loo tijaabiyo shaqeynta API isla markaaba. 

Tijaabooyinka culeyska API waxay cabbiraan cabbirrada sida waqtiga jawaabta, isticmaaleyaasha isla socda, heerka wax soo saarka, heerarka isticmaalka kheyraadka, Waqtiga celceliska ee u dhexeeya guul-darrida(MTBF), Waqtiga Fashilka (MTTF), iyo wixii la mid ah. Dhammaan cabirradan waxaa loo isticmaali karaa si loo go'aamiyo sida wanaagsan ee API-gu u shaqeeyo.

Noocyada Tijaabada Xamuulka

Waxaa jira dhowr nooc oo ah baaritaanka culeyska, mid walbana wuxuu leeyahay kiisas isticmaalkiisa. Bal aan eegno qaar ka mid ah.

Tijaabinta Xamuulka: Tani waa qaabka aasaasiga ah ee tijaabada culeyska. Waxa loo istcmaalay in lagu qiimeeyo waxqabadka nidaamka (xaaladdan, API) culayska caadiga ah iyo culayska ugu sarreeya ee la filayo

Tijaabada Cadaadiska: Tan waxaa loo isticmaalaa in lagu qiimeeyo waxqabadka nidaamka ka hooseeya culeys aad u culus. Hadafka tijaabadani waa in la eego haddii nidaamku soo kabsado fashilka ka dib, iyo inta ay qaadanayso in sidaas la sameeyo. Culayska inta badan si tartiib ah ayaa kor loogu qaadayaa ilaa uu ka sarreeyo awoodda nidaamka.

Tijaabada Spike: Tani waxay la mid tahay tijaabinta walbahaarka, marka laga reebo culays culus oo si lama filaan ah loo mariyo, liddi ku ah in si tartiib ah kor loogu qaado. Tijaabada noocaan ah waxay u taagan tahay waxa dhaca marka ay si lama filaan ah u kacdo tiradaada isticmaalayaasha ama booqdayaasha, ama marka uu jiro weerar DDOS nidaamkaaga.

Tijaabada Qoyaanka: Imtixaankani waa mid ka duwan kuwa kale ee sare. Waxay ka dhigaysaa nidaamkaaga 80% (ama ku saabsan) culeyska caadiga ah waxayna ka tagtaa inuu socdo muddo dheer, dheh 12 ilaa 14 saacadood. Imtixaanka noocaan ah ayaa go'aamiya sida la isku halayn karo ee nidaamku u yahay waqti ka dib.

Ku Soo Qaad Tijaabada API-gaaga Ayaxa

Horumariyayaashu waxay marin u helayaan doorashooyin kala duwan oo ay ku tijaabinayaan API-yadooda. Qaar ka mid ah aaladaha tijaabinta culeyska caadiga ah waa Gatling, JMeter, iyo Locust. Waxaan diirada saari doonaa Ayaxa maqaalkan.

Ayaxu waa qalab ku salaysan python-ku-salaysan baadhista culayska culeyska ee ay isticmaalaan shirkadaha ugu sareeya sida Google, Microsoft, iyo Riot Games si ay u tijaabiyaan API-yadooda. Maqaalkan, waxaan ku tusi doonaa sida loo shubo tijaabada API. 

Tababarkan, waxaan u abuuri doonaa API fudud oo leh Flask. Waad ila socon kartaa ama waxaad ku abuuri kartaa API-gaaga Node, ama qaab kasta oo aad ku qanacsan tahay.

Shuruudaha

Python 3

Dejinta & Rakibaadda

Marka hore, waxaad u baahan tahay inaad ku dejiso jawi ku habboon kombuyutarkaaga si aadan khalkhal u gelin deegaankaaga Python ee caalamiga ah. Si taas loo sameeyo, socodsii amarada soo socda. Ogsoonow in amarradan ay khuseeyaan terminaalka Windows.

$ mkdir mashruuca

$ cd /d dariiqa\u\mashruuca

$ python -m venv venv

$ venv\Scripts\firfir

 

Marka hore, waxaan abuurnay a mashruuca hagaha. Ka dib waxaan u bedelnay hagahayaga hadda mashruuca. Ka dib waxaanu abuurnay oo aanu ka hawlgelinay deegaan macmal ah Python gudaha hagahaas. 

Hadda, waxaan u gudbi doonaa rakibidda Flask(waxaan u isticmaali doonaa si aan u abuurno dhibcaha ugu dambeeya si loo tijaabiyo) iyo Ayax laftiisa. 

 

Si aad u rakibto Flask, orod. Hubi inaad ku jirto mashruuca halkaas oo aad ka abuurtay jawi muuqaal ah.

$ pip ku rakib dhalada

 

Si aad Locust u rakibto, orod

$ pip ku rakib ayax

 

Marka taas la sameeyo, ku qor amarrada soo socda. Hubi inaad ku jirto mashruuca tusaha marka aad tan sameyso.

$ nuqul nul __init__.py

$ mkdir app

$ nuqul nul app\app.py

$ nuqul nul app \__init__.py

 

Amaradani waxay abuuraan qaar ka mid ah faylalka kuwaas oo aan u isticmaali doono si aan u abuurno dhammaadkayaga annaga oo isticmaalaya Flask. Waxa kale oo aad samayn kartaa faylashan adiga oo isticmaalaya sahamiyaha faylkaaga jidka. Laakiin waa maxay madadaalo taas? Markaad taas sameyso, koobi ka geli koodka hoose barnaamijka.py

ka soo dejinta dhalada Flask, jsonify, codsi

app = Calan (__name__)

baabuurta_model = [

  {'calaamadaha': 'Tesla', 'model': 'Model S'}

]

 

dayuuradaha_model = [

  {'calaamadaha': 'Boeing', 'model': '747'}

]

 

@app.route('/cars')

Gawaarida helida():

  soo celi jsonify(carr_models)

@app.route('/planes')

def get_planes():

  soo celi jsonify(plane_models)

haddii __name__ == '__ main__':

    app.run (debug=Run)  

 

Koodhka sare waxa uu ka kooban yahay hab hel_baabuur loo isticmaalo in lagu helo liiska baabuurta iyo noocyada ay, iyo heli_diyaarado loo isticmaalay in lagu helo liiska noocyada diyaaradaha iyo moodooyinkooda. Si aan u shubno tijaabada bartan dhamaadka ah, waxaan u baahanahay inaan wadno app.py. Si aad taas u samayso maamul amarka hoose.

$ python dariiqa \to\app.py

Markaad taas orodo, waa inaad aragto wax sidan oo kale ah:

Tijaabada Xamuulka API 1

Haddii aad URL ka koobiyayso terminalka oo ku qor baabuur or diyaaradaha Kadib /, waa inaad awood u leedahay inaad aragto xogta halkaas. Si kastaba ha ahaatee, hadafkayagu waa in aan ku tijaabino meesha ugu dambaysa Ayax, ee maaha browserka. Markaa aynu taas samayno. Ku socodsii amarka soo socda xididka kaaga mashruuca tusaha.

 

$ nuqul nul locust_test.py

 

Tani waxay abuurtaa faylka 'locust_test.py' xididka kaaga mashruuca hagaha. Markaad taas sameyso, fur faylka oo ku dheji koodka hoose. Waxaan kuu sharxi doonaa waqti yar.

 

waqtiga soo dejinta

ka soo dejinta ayax HttpUser, hawsha, inta u dhaxaysa

 

Habdhaqanka Isticmaalaha fasalka (HttpUser):

    sug_time = inta u dhaxaysa (5, 10)

 

    @hawl

    def get_cars(naftiisa):

        self.client.get('/cars')

    

    @hawl

    def get_planes(self):

        self.client.get ('/ diyaarado')

 

Kani waa tusaale aasaasiga ah ee isticmaalka Ayaxa si loo tijaabiyo API. Marka hore, waxaan abuurnaa fasal Dhaqanka Isticmaalaha, kaas oo la bixin karo magac kasta oo ku habboon laakiin waa in la kordhiyaa Isticmaalaha Http. Isticmaalaha Http waa fasalka ka taxadaraya soo saarista isticmaalayaasha farsamada badan si ay u fuliyaan hawlaha aan ku qeexnay Dhaqanka Isticmaalaha fasalka. 

Hawsha waxaa lagu qeexaa iyadoo hab lagu qurxiyo @hawl qurxin. Waxa kale oo aanu leenahay hawl la yidhaahdo u dhexeeya () taas oo noo ogolaanaysa in aan cayimno ilbiriqsiyo kala duwan si aan u sugno ka hor inta aan la fulin hawsha xigta. Waxaad arki kartaa inaan u qoondaynay 5 ilaa 10 ilbiriqsi taas koodkayaga. 

Si aad u socodsiiso koodka, hubi inaad weli ku jirto deegaankaaga casriga ah. Haddii ka aad abuurtay uu isticmaalo serferka u adeegaya API-ga, fur terminal cusub, ku beddel hagahaaga mashruuca tusaha, oo dhaqaaji jawiga casriga ah ee aad abuurtay. Waxaad ka heli kartaa amarka lagu dhaqaajiyo jawi dalwadeedka kore. Hadda, geli taliska hoose ee terminaalkaaga.

 

$ ayax -f ayax_test.py

 

Waa inaad aragto wax sidan oo kale ah:

Tijaabada Xamuulka API 2

Sida caadiga ah, interface webka ayaxa waxa uu ku yaalaa http://localhost/8089. Haddii aad booqato mareegaha, waa inaad aragto interface sida tan:

Tijaabada Xamuulka API 3

Laga soo bilaabo interface-ka, waxaan ku qeexi karnaa tirada isticmaalayaasha, heerka taranka (isticmaalayaasha la sameeyay ilbiriqsi kasta), iyo Martigeliyaha. Waxaad ka heli kartaa ciwaanka martigeliyahaaga adiga oo hubinaya terminalka uu seerfarku ku socdo. Xaaladeena, waxay ku taal dekedda 5000. Markaad gujiso Bilow raxan, waxaa lagu soo bandhigi doonaa interface hoose.

Tijaabada Xamuulka API 4

Tani waxay ku tusinaysaa cabbirro kala duwan oo faa'iido leh sida tirada codsiyada guul-darraystay, celceliska wakhtiga codsiga, wakhtiga ugu yar ee codsiga, codsiyada ilbiriqsikii, iyo wixii la mid ah. Marka aad ku qanacdo waxa aad aragto, waxaad riixi kartaa badhanka joogsiga. 


Ka sokow Statistics tab, waxaa jira a gooldhalinta tab taas oo muujinaysa wax badan macluumaad qaab garaaf ah, sida sawirka hoose.

Waxaa jira wadarta codsiyada garaafka labaad, garaafka waqtiga jawaabta, iyo tirada isticmaalayaasha garaafka, oo dhan ayaa loo qorsheeyay waqti ka hor. Isticmaalka garaafyada, waxaad go'aamin kartaa inta isticmaale ee la aqbali karo waqti jawaab celin go'an, ama waxaad ilaalin kartaa jaantusyadaada waqti jawaab celin joogto ah inkastoo tirada sii kordhaysa ee isticmaalayaasha, iyo aragtiyo kale oo la mid ah. Haddii aad rabto inaad la wadaagto kuwan stats qof kale, waxaad kala soo bixi kartaa warbixin ka Soo dejiso Xogta tab.

Si loo soo gabagabeeyo...

Tijaabinta culeyska API waa hawl muhiim u ah geeddi-socodkaaga horumarineed, markaa iska hubi in lagu dhex daray wareeggaaga naqshadaynta. Jid ahaan, waxaad sidoo kale samayn kartaa noocyada kale ee tijaabada culeyska adiga oo ku kala duwanaya qiyamka tirada isticmaaleyaasha iyo heerka taranka. 

Haddii aad rabto inaad samayso tijaabada taranka, cadee qiime weyn (dheh 2000) tirada isticmaalayaasha, ka dibna qiimo la mid ah qiimahaaga taranka (tusaale ahaan 500). Tani waxay ka dhigan tahay in 4 ilbiriqsi gudahood, aad lahaan lahayd dhammaan isticmaalayaasha 2000 oo dhan inay abuuraan oo galaan dhammaadkaaga. Tijaabada walbahaarka waxay la mid noqon doontaa, laakiin leh qiime aad uga hooseeya heerka taranka. Si aad u ogaato waxa aad samayn karto oo dhan, hubi Ayaxa dukumentiyada