Okuqukethwe[Fihla][Bonisa]
Ukutholakala kwezinhlelo zokusebenza akukaze kuthathwe njengokubalulekile njengoba kwenzeka namuhla lapho sisebenzisa izinhlelo zokusebenza ngaphezu kokuxhumana nje, noma ngabe okomuntu siqu noma okuphrofeshinali futhi uma izinhlelo zokusebenza ziyibhizinisi.
Izinhlelo zokusebenza ezingahlali ku-inthanethi, noma ezingazinzile, zilahlekelwa abasebenzisi bazo nokufaneleka, ekugcineni ziphelelwe yisikhathi. Kwenzeka ngokuphazima kweso. Ngoba i-inthanethi ayilali futhi isebenza amahora angu-24 ngosuku, izinsuku ezingu-7 ngeviki, umbono ofanayo kufanele usebenze ezinhlelweni zokusebenza.
Ukulinganisa kubalulekile ekwenzeni lokhu nokuqinisekisa ukutholakala kohlelo lokusebenza. Ukulinganisa ukulayisha kungenye yezingxenye ezibaluleke kakhulu ekuqinisekiseni ukutholakala. Abantu abaningi basakholelwa ukuthi ukulinganisa umthwalo kungafezwa ngombhalo olula.
Nokho, akunjalo. Yiyo yodwa enikeza ukufinyelela ezinhlelweni emhlabeni wonke - nganoma isiphi isikhathi futhi kusukela kunoma iyiphi idivayisi.
Kulokhu okuthunyelwe, sizobheka ngokujulile ukulinganisa komthwalo, ama-algorithms ayo, nokuthi kuhlobana kanjani nama-microservices, phakathi kwezinye izinto. Ake siqale!
Kuyini ukulinganisa umthwalo?
Njengoba isidingo sewebhusayithi noma isicelo sebhizinisi sikhula, iseva eyodwa maduze ngeke ikwazi ukuphatha wonke umthwalo. Izinhlangano zisabalalisa umsebenzi phezu kwamaseva amaningi ukuze zanelise isidingo. Le ndlela, eyaziwa ngokuthi "i-load balancing," igcina iseva eyodwa ekulayishweni ngokweqile, okungayibangela ukuthi yehle, yehlise izicelo, noma iphinde iphahlazeke.
Ukulayisha ukulinganisa kusabalalisa ithrafikhi yenethiwekhi ngokulinganayo ukugwema ukwehluleka ngenxa yokugcwala kwensiza. Izinhlelo zokusebenza, amawebhusayithi, isizindalwazi, nezinye izinsiza zekhompyutha zisebenza kangcono futhi zitholakala kakhulu kusetshenziswa le ndlela. Iphinde isize ekucubungulweni okufanele nangesikhathi kwezicelo zabasebenzisi.
Ngokombono womsebenzisi, ukulinganisa komthwalo kusebenza njengomxhumanisi ongabonakali phakathi kweklayenti neqoqo lamaseva, okuqinisekisa ukuthi izicelo zokuxhuma azilahlwa. Izinhlelo zokusebenza, amawebhusayithi, isizindalwazi, kanye nezinsiza ze-inthanethi cishe zingawa uma isidingo siba sikhulu kakhulu ngaphandle kokulinganisa komthwalo.
Amakhulu ezinkulungwane zezicelo zabasebenzisi zingathunyelwa kuwebhusayithi eyodwa enethrafikhi ephezulu ngesikhathi esisodwa. Amaseva amaningi ayadingeka ukuze agcwalise ngendlela efanele amakhasi ewebhu ngokuqukethwe okuceliwe, njengombhalo, izithombe, ividiyo, nokusakazwa komsindo. Ukulinganisa ukulayisha kuvamise ukusetshenziswa emapulazini eseva yewebhusayithi anethrafikhi ephezulu, kanye namaseva e-DNS, isizindalwazi, namasayithi e-File Transfer Protocol (FTP).
Uma iseva eyodwa ithwele kanzima, lokhu kungase kusebenze kabi noma kuphahlazeke. Izikali zokulayisha zinciphisa ithuba lesikhathi sokuphumula ngokusabalalisa izicelo zabasebenzisi ngokulinganayo phakathi kweqoqo lamaseva. Uma enye yamaseva eqenjini ihluleka, ithrafikhi idluliselwa kwamanye amaseva eqenjini. Isilinganisi somthwalo sengeza ngokuzenzakalelayo amaseva amasha enqubweni yokusabalalisa ithrafikhi lapho engezwa ku-pool pool.
Kusebenza kanjani ukulinganisa ukulayisha?
Isebenza kanje:
- Uma iklayenti lithola isicelo, njengesiphequluli noma ngohlelo lokusebenza, lizama ukuxhumana neseva.
- Uma isilinganisi somthwalo sithola isicelo, sisithumela kwenye yeziphakeli eqenjini leseva ngokusekelwe kumaphethini amisiwe nge-algorithm (noma ipulazi).
- Iseva ithola isicelo sokuxhuma futhi iphendula iklayenti ngebhalansi yomthwalo.
- Uma isilinganisi somthwalo sithola impendulo, sifanisa ikheli lasesizindeni se-inthanethi leklayenti nekheli le-IP leseva ekhethiwe. Ngemva kwalokho, impendulo idluliselwa ngephakethe.
- Ukukhipha i-SSL kuyinqubo yokususa ukubethela kwedatha kusetshenziswa iphrothokholi yokubethela Yesendlalelo Sezokuphepha ukuze amaseva angadingeki.
- Inqubo iyaphindwa kuze kuphele isikhathi.
Layisha Izindlela Zokulinganisa
Ukuze ukhethe ukuthi iyiphi iseva epulazini leseva ethola isicelo esilandelayo, inqubo ngayinye yokulinganisa umthwalo isebenzisa isethi yemibandela. Kunezindlela ezinhlanu ezijwayelekile zokulinganisa umthwalo:
- Iround Robin: Lena indlela ezenzakalelayo, futhi isebenza njengoba izwakala. Isilinganisi somthwalo sisabalalisa izicelo ngephethini ejikelezayo, siqala ngeseva yokuqala eqenjini bese siqhubekela phansi, lapho silinda khona ukubizwa futhi. Le ndlela iqinisekisa ukuthi iseva ngayinye ibamba cishe inombolo efanayo yoxhumo.
- Isisindo Round Robin: Le ndlela inika iseva ngayinye isisindo (noma inketho) ngokuvamile elingana nomthamo wayo. Lapho iseva ithola izicelo eziningi, isisindo siyakhuphuka. Isibonelo, iseva enenani lesisindo sokubili ithola izicelo eziphindwe kabili njengeseva enenani lesisindo esisodwa.
- Iseshini Enamathelayo: Le ndlela, eyaziwa nangokuthi ukuphikelela kweseshini, ixhuma amaklayenti athile namaseva phakathi nesikhathi seseshini. Ukuze kutholwe isixhumanisi, isilinganisi sokulayisha sisebenzisa ikhukhi noma ikheli le-IP lomsebenzisi ukuhlonza isibaluli somsebenzisi. Uma uxhumano selumisiwe, izicelo zomsebenzisi ziqondiswa kuseva efanayo kuze kuphele iseshini. Lokhu kuthuthukisa izinsiza zenethiwekhi kuyilapho kuthuthukisa ulwazi lomsebenzisi.
- Ukuxhumana Okuncane: Leli su lithatha ukuthi zonke izicelo ziholela emthwalweni weseva olinganayo. Njengomphumela, iseva enenombolo encane yezicelo ithola isicelo esilandelayo.
- IP Hash: Le algorithm ikhiqiza ukhiye we-hashi oyingqayizivele ngokusekelwe kumthombo weklayenti namakheli e-IP weseva. Ukhiye usetshenziselwa ukuhambisa isicelo futhi uvumela ukuxhumana okulahlekile neseva efanayo ukuthi kuqaliswe kabusha.
I-Hardware Vs. I-Software Load Balancers
I-Hardware Load Balancer
Izingxenyekazi zekhompuyutha ezingokoqobo, njengezinto zikagesi, zakha izilinganisi zomthwalo wehadiwe. Le mizila ithrafikhi eya kumaseva kuye ngezinto ezifana nenani loxhumo olukhona, ukusetshenziswa kwephrosesa, nokusebenza kweseva. Izilinganisi zezingxenyekazi zekhompuyutha zine-firmware yokuphathelene okufanele inakekelwe futhi ibuyekezwe lapho izinguqulo ezintsha nokulungiswa kwezokuphepha kutholakala.
Izilinganisi zomthwalo wezingxenyekazi zekhompuyutha zivame ukuhlinzeka ngokusebenza okuphezulu nokulawula, kanye nohlu olubanzi lwamakhono afana nokuqinisekiswa kwe-Kerberos nokusheshisa izingxenyekazi zekhompuyutha ze-SSL, kodwa zidinga izinga elithile lobuchwepheshe bokuphatha nokunakekela. Ngenxa yokuthi izilinganisi zomthwalo wezingxenyekazi zekhompuyutha aziguquguquki kancane futhi ziyakaleka kunezilinganisi zomthwalo we-software, kukhona ukuthambekela ekuhlinzekeni ngokudlulele kwezilinganisi zomthwalo wehadiwe.
I-Software Load Balancer
Izilinganisi zomthwalo wesoftware ngokuvamile zilula ukuzisetha kunozakwabo behadiwe. Futhi abiza kakhulu futhi avumelana nezimo, futhi asebenza kahle nezindawo zokuthuthukisa isoftware. Indlela yesofthiwe ikuvumela ukuthi wenze ngendlela oyifisayo isilinganisi somthwalo sibe nezimfuneko eziqondile zendawo yakho. Ukuvumelana nezimo okukhuphukile kungase kufike ngenxa yezindleko zesikhathi esingeziwe esichithwe kusetha isilinganisi somthwalo.
Izilinganisi zesofthiwe zikunikeza ukuguquguquka okukhulu kokwenza izinguquko nezibuyekezo kunalezo zehadiwe, ezinendlela yebhokisi elivaliwe. Imishini ebonakalayo epakishwe kusengaphambili ingasetshenziswa njengezilinganisi zomthwalo wesofthiwe (ama-VM). Imishini ebonakalayo izokongela isikhathi sokusetha, kodwa ingase ingabi nakho konke ukusebenza okutholakala kozakwabo behadiwe.
Ukuqaliswa Okulula Kokulinganisa Komthwalo
Sizosebenzisa umtapo wezincwadi we-Spring Cloud ukuze ukwakha izinhlelo zokusebenza ezixhumeka kwezinye izinhlelo zokusebenza ngendlela yokulayisha. Ngenkathi sicubungula izicelo zesevisi yesilawuli kude, singakha kalula ukulinganisa kokulayisha sisebenzisa noma iyiphi indlela esiyithandayo. Cabangela ikhodi elandelayo njengesibonelo. Sizoqala ngohlelo lokusebenza oluyisisekelo lweseva.
Iseva izoba nendawo yokugcina ye-HTTP eyodwa kuphela futhi izosetshenziswa ezimeni ezimbalwa. Bese sizokwakha uhlelo lokusebenza lweklayenti olusebenzisa i-Load Balancer ukusabalalisa izicelo kuzo zonke izimo zeseva ezimbalwa.
Iseva
Siqala ngesisekelo Ibhuthi yasentwasahlobo isicelo seseva yethu eyisibonelo:
Ukuqala, sijova okuguquguqukayo okwenziwa ngokwezifiso okubizwa nge-example_ID. Lokhu kusisiza ukuba sihlukanise phakathi kwezimo eziningi ezisebenzayo. Ngemva kwalokho, sakha isiphetho se-HTTP GET esisodwa esibuyisela umlayezo nesibonelo se-ID.
Isenzakalo esizenzakalelayo esine-ID 1 sizosebenza ku-port 8080. Sidinga kuphela ukungeza amapharamitha wohlelo ambalwa ukuze siqalise isenzakalo sesibili:
Client
Manje ake sibheke ikhodi yeklayenti. Yilapho i-Load Balancer ingena khona, ngakho-ke ake siqale ngokuyifaka kuhlelo lwethu lokusebenza:
Ukulandela lokho, sithuthukisa ukusetshenziswa kwe-ServiceInstanceListSupplier. Lokhu kungenye yezokuxhumana ezibaluleke kakhulu ku-Load Balancer. Icacisa ukuthi sizithola kanjani izimo zesevisi ezifinyelelekayo.
Sizofaka ikhodi kanzima izikhathi ezimbili ezihlukene zeseva yethu eyisibonelo kuhlelo lwethu lwesampula. Zisebenza kusistimu efanayo kodwa zisebenzisa izimbobo ezihlukene:
Dala ikilasi LoadBalancerConfiguration manje:
Leli klasi linenjongo eyodwa kuphela: lidala umakhi we-WebClient olinganiselayo ekwenzeni izicelo ezikude. Isichasiselo sethu sisebenzisa igama elingelona iqiniso lesevisi.
Lokhu kungenxa yokuthi cishe ngeke siwazi amagama omethuleli anembile nezimbobo zokuqalisa izimo ngaphambi kwesikhathi. Ngenxa yalokho, sisebenzisa igama elingelona iqiniso njengesimeli, futhi uhlaka luzongena esikhundleni solwazi lwangempela lapho lukhetha isenzakalo esisebenzayo.
Okulandelayo, masenze ikilasi Lokulungiselela elizosetshenziswa ukuqinisa ukunikezwa kwethu kwesibonelo sesevisi. Qaphela ukuthi sisebenzisa igama elifanayo njengangaphambili:
Manje singakwazi ukwakha uhlelo lokusebenza lweklayenti lwangempela. Ake sithumele imibuzo eyi-10 kuseva yesampula sisebenzisa ubhontshisi we-WebClient kusukela ekuqaleni:
Singabona kokuphumayo ukuthi silayisha ukulinganisa phakathi kwezimo ezimbili ezihlukene:
Layisha ibhalansi kuMicroservices
I-Microservice architecture isetshenziswa izinkampani eziningana, njenge-Netflix ne-Amazon, ukuthuthukisa izinhlelo zokusebenza zebhizinisi njengesethi yezinsizakalo ezixhumeke ngokukhululekile. I-Hyperscale kanye nokulethwa okuqhubekayo kwezinhlelo zokusebenza eziyinkimbinkimbi yizizathu ezimbili kuphela zokuthuthela kulesi sakhiwo esabalalisiwe, esixhumeke ngokukhululekile.
Lawa maqembu ezinkampani asebenzise amasu e-Agile ne-DevOps ukuze akhiqize izinhlelo zokusebenza ngokushesha nangezinga lokuhluleka eliphansi kunezindlela ezivamile. Kodwa-ke, kufanele ulinganise phakathi kobunzima bezakhiwo ezisabalalisiwe kanye nezimfuno zohlelo lokusebenza, izidingo zesikali, kanye nemikhawulo yesikhathi ukuya emakethe.
Iminyaka eminingi kangaka, izilawuli zokulethwa kwezicelo (ama-ADC) bezibalulekile ukuze kuhlangatshezwane nezimfuneko zeleveli yesevisi yezicelo zezinkampani ezisingathwa endaweni noma emafini. Iklayenti elizibandakanya nohlelo lokusebenza olusekelwe kuma-microservices akudingeki lazi mayelana nezimo ezinikezwayo ukuze likhulise iklayenti kanye nezinsizakalo ezincane ngokuzimela.
Lokhu ukuhlukanisa ngokuqondile okunikezwa ummeleli ohlanekezelwe noma isilinganisi somthwalo. Futhi, ukulinganisa komthwalo kuyisixazululo sokuqinisekisa ukuthi ama-microservices angakwazi ukubhekana nesidingo, ukuphepha, nokutholakala.
Uma uhlanganisa ukulinganisa komthwalo ongokwesiko kweNyakatho neNingizimu phakathi kwezinhlelo zokusebenza ezisuselwe kuklayenti kanye nezinsizakalo ezincane ezinokuthunyelwa kwaseMpumalanga-Ntshonalanga ngokulinganisa okuvundlile, uthola ukuthuthuka okukhulu. Inhloso ukugcina indawo ephephile nelawulwayo edingwa yi-IT ngaphandle kokudela ikhono lokuthuthukisa noma Ukuzenzekelayo kwe-DevOps izidingo.
Izinzuzo
Ukulinganisa ukulayisha kunikeza izinzuzo ezihlukahlukene ngokuthuthukisa ukusetshenziswa kwensiza, ukulethwa kwedatha, nesikhathi sokuphendula samawebhusayithi anethrafikhi ephezulu nezinhlelo zokusebenza, kanye nezizindalwazi ezithola inombolo enkulu yemibuzo. Ukulinganisa ukulayisha kuqinisekisa ukuthi izicelo zomsebenzisi zigcwaliseka ngokushesha nakafanele ezimeni zethrafikhi ephezulu.
Zisindisa abasebenzisi ubunzima bokubhekana nezinhlelo ezivilaphayo nezisetshenziswa. Ukulinganisa ukulayisha kusiza futhi ukugwema isikhathi sokuphumula nokwenza ukuphepha kube lula, kwehlisa ingcuphe yokulahleka komkhiqizo kanye nenzuzo yenkampani yakho.
- Ukulinganisa komthwalo kunikeza ukuguquguquka kokwengeza nokukhipha amaseva njengoba kudingekile, ngaphezu kokuphatha ithrafikhi ngokusebenza kahle kakhulu. Ngenxa yokuthi ithrafikhi idluliselwa kwamanye amaseva ngesikhathi sokulungiswa, kuyenzeka futhi ukulungisa iseva ngaphandle kokuphazamisa abasebenzisi.
- Ukulinganisa komthwalo kunikeza ukuphindaphinda okwakhelwe ngaphakathi ngokuhlukanisa ithrafikhi phakathi kwesethi yamaseva. Ungadlulisela ngokushesha umthwalo kwamanye amaseva uma eyodwa yehluleka, unciphise umthelela kubasebenzisi.
- Uma uhlelo lokusebenza noma ukusetshenziswa kwewebhusayithi kukhula, ithrafikhi eyengeziwe ingase yehlise ukusebenza kwayo uma ingaphathwa kahle. Ngokulinganisa umthwalo, ungakwazi ukwengeza iseva yangempela noma ebonakalayo ukuze uhlangabezane nesidingo ngaphandle kokuphazamisa isevisi. Isilinganisi somthwalo sihlonza amaseva amasha njengoba eza ku-inthanethi futhi siwafaka kalula emsebenzini. Le ndlela ikhetha ukuthutha iwebhusayithi isuka kuseva ethwele kanzima iye kwentsha, okuvamise ukubandakanya isikhathi esithile sokuphumula.
Isiphetho
Ukulinganisa imithwalo kuyingxenye ebalulekile yesistimu yesimanje, ebekezelela amaphutha. Singavele sakhe izinhlelo zokusebenza ezisabalalisa izicelo kuzimo eziningi zesevisi sisebenzisa izindlela ezihlukene zokulinganisa ukulayisha. Amabhizinisi kufanele asekele amasistimu e-IT ayinkimbinkimbi ukuze ahlinzeke izinhlelo zokusebenza ngokuphephile.
Ukucushwa kwe-Cross-domain microservices, ukusetshenziswa, nokunakekelwa kungase kube namaphutha, kubize, futhi kudle isikhathi. I-IT kufanele isebenzise i-automation, ukubonakala, izibalo, kanye nezinqubo ezihamba phambili ze-orchestration nobuchwepheshe obuhambisana nezinqubo zabo ezisheshayo neze-DevOps ukwenza ukusethwa nokugcinwa kwalawa ma-microservices kube lula.
shiya impendulo