Table of Contents[Hūnā][Hōʻike]
ʻAʻole i manaʻo nui ʻia ka loaʻa ʻana o nā noi e like me ia i kēia lā ke hoʻohana mākou i nā polokalamu no ka ʻoi aku o ke kamaʻilio ʻana, inā pilikino a ʻoihana paha a inā ʻo nā polokalamu ka ʻoihana.
ʻO nā noi ʻaʻole paʻa mau ma ka pūnaewele, a paʻa ʻole paha, nalowale nā mea hoʻohana a me ka pili, a lilo i mea kahiko. Ua hiki mai i ka uila. No ka mea ʻaʻole hiamoe ka pūnaewele a hana i nā hola 24 i ka lā, 7 mau lā o ka pule, pono e pili ka manaʻo like i nā polokalamu.
He mea koʻikoʻi ka Scalability i ka hana ʻana i kēia a me ka hōʻoia i ka loaʻa ʻana o ka noi. ʻO ka load balancing kekahi o nā mea nui i ka hōʻoia ʻana i ka loaʻa. Nui ka poʻe e manaʻoʻiʻo nei hiki ke hoʻokō ʻia ke kaupaona ʻana me kahi palapala maʻalahi.
Eia naʻe, ʻaʻole kēia ka hihia. ʻO ia wale nō ka hāʻawi ʻana i nā polokalamu ma ka honua holoʻokoʻa - i kēlā me kēia manawa a mai kekahi mea hana.
Ma kēia pou, e nānā hohonu mākou i ka load balancing, kāna algorithms, a pehea e pili ai i nā microservices, a me nā mea ʻē aʻe. E hoʻomaka kākou!
He aha ke kau ʻana o ka ukana?
Ke ulu nei ka noi no kahi pūnaewele a i ʻole ka noi ʻoihana, ʻaʻole hiki i kahi kikowaena hoʻokahi ke mālama i ka ukana holoʻokoʻa. Hāʻawi nā hui i ka haʻahaʻa hana ma luna o nā kikowaena lehulehu i mea e hoʻokō ai i ka noi. ʻO kēia ʻano hana, i kapa ʻia ʻo "load balancing," mālama i kahi kikowaena hoʻokahi mai ka hoʻonui ʻana, hiki ke hoʻolohi, hāʻule i nā noi, a i ʻole ulia.
Hoʻokaʻawale like ka load balancing i ka hele ʻana o ka pūnaewele no ka pale ʻana i ka hemahema ma muli o ka nui o ka waiwai. ʻOi aku ka maikaʻi o nā noi, nā pūnaewele, nā waihona, a me nā kumuwaiwai kamepiula ʻē aʻe a ʻoi aku ka maikaʻi o ka hoʻohana ʻana i kēia ʻano hana. He mea kōkua nō hoʻi i ka hana kūpono a me ka manawa kūpono o nā noi mea hoʻohana.
Mai ka hiʻohiʻona o ka mea hoʻohana, ʻo ka load balancing ka mea i ʻike ʻole ʻia ma waena o kahi mea kūʻai aku a me kahi hōʻiliʻili o nā kikowaena, e hōʻoia ana ʻaʻole e hāʻule nā noi pili. E hāʻule paha nā noi, nā pūnaewele, nā ʻikepili, a me nā lawelawe pūnaewele inā ʻoi aku ka nui o ka noi me ka ʻole o ka hoʻohālikelike ʻana.
Hiki ke hoʻouna ʻia nā haneli haneli o nā noi mea hoʻohana i kahi pūnaewele kaʻa nui hoʻokahi i ka manawa like. Pono nā kikowaena he nui e hoʻopiha pono i nā ʻaoʻao pūnaewele me nā mea i noi ʻia, e like me ke kikokikona, nā kiʻi, nā wikiō, a me ke kahe leo. Hoʻohana maʻamau ʻia ka hoʻohālikelike ʻana i ka hoʻouka ʻana ma nā kahua kikowaena pūnaewele nui loa, a me nā kikowaena DNS, nā ʻikepili, a me nā paena File Transfer Protocol (FTP).
Inā kaumaha ka server hoʻokahi, hiki ke hana maikaʻi ʻole a hāʻule paha. Hoʻemi ka load balancers i ka manawa hoʻomaha ma o ka hāʻawi like ʻana i nā noi mea hoʻohana ma waena o kahi hōʻiliʻili o nā kikowaena. Inā hāʻule kekahi o nā kikowaena o ka hui, e hoʻohuli ʻia ke kaʻa i nā kikowaena ʻē aʻe o ka hui. Hoʻohui ʻokoʻa ka mea kaulike hoʻouka i nā kikowaena hou i ke kaʻina hoʻohele kaʻa i ka wā e hoʻohui ʻia ai lākou i ka loko kikowaena.
Pehea ka hana ʻana o ka load balancing?
E hana ana penei:
- Ke loaʻa ka mea kūʻai aku i kahi noi, e like me ka polokalamu kele pūnaewele a i ʻole kahi noi, hoʻāʻo ʻo ia e hoʻopili me ke kikowaena.
- I ka loaʻa ʻana o kahi noi i kahi mea hoʻohālikelike ukana, hoʻouna ʻo ia iā ia i kekahi o nā kikowaena i loko o kahi pūʻulu kikowaena e pili ana i nā kumu i hoʻokumu ʻia e ka algorithm (a i ʻole mahiʻai).
- Loaʻa i ke kikowaena ka noi pili a pane i ka mea kūʻai aku ma o ka load balancer.
- I ka loaʻa ʻana o ka pane ʻana i ka mea kaulike ukana, pili ia i ka IP address o ka mea kūʻai aku me ka IP address o ke kikowaena i koho ʻia. Ma hope o kēlā, hoʻouna ʻia ka pane me ka ʻeke.
- ʻO SSL offload ke kaʻina o ka wehe ʻana i ka ʻikepili me ka hoʻohana ʻana i ka protocol encryption protocol Security Socket Layer i ʻole pono nā kikowaena.
- Hoʻopau hou ʻia ke kaʻina hana a pau ke kau.
Nā Hana Kaulike
No ke koho ʻana i kahi o nā kikowaena i loko o kahi mahiʻai server e loaʻa i ka noi aʻe, e hoʻohana kēlā me kēia ʻenehana hoʻohālikelike hoʻoili i kahi hoʻonohonoho. ʻElima mau ala maʻamau no ke kau ʻana i ka ukana:
- ʻO Robin Robin: ʻO kēia ke ala paʻamau, a hana ia e like me ke kani. Hāʻawi ka mea kaulike ukana i nā noi ma ke ʻano ʻōwili, e hoʻomaka ana me ke kikowaena mua o ka hui a hele i lalo i lalo, kahi e kali ai e kāhea hou ʻia. Mālama kēia ʻano hana i ka lawelawe ʻana o kēlā me kēia kikowaena i ka helu like o nā pilina.
- Kaumaha Poe Robin: Hāʻawi kēia ala i kēlā me kēia kikowaena i ke kaumaha (a i ʻole ka makemake) i kūlike i kona hiki. ʻO ka nui o nā noi i loaʻa i kahi kikowaena, ʻoi aku ka kiʻekiʻe o ke kaumaha. No ka laʻana, loaʻa i kahi kikowaena me ka waiwai paona ʻelua i ʻelua mau noi e like me ke kikowaena me ka waiwai kaumaha o hoʻokahi.
- Kau Pilikino: ʻO kēia ala, ʻike ʻia hoʻi ʻo ka hoʻomau ʻana o ka wā, hoʻopili i kekahi mau mea kūʻai aku a me nā kikowaena no ka lōʻihi o kahi kau. No ka hoʻokumu ʻana i ka loulou, hoʻohana ka mea hoʻohālikelike ukana i kahi kuki a i ʻole ka IP address o ka mea hoʻohana e ʻike i kahi ʻano mea hoʻohana. Ke hoʻokumu ʻia ka pilina, kuhikuhi ʻia nā noi a ka mea hoʻohana i ka server like a hiki i ka pau ʻana o ke kau. Hoʻonui kēia i nā kumuwaiwai pūnaewele me ka hoʻomaikaʻi ʻana i ka ʻike mea hoʻohana.
- Nā Hoʻohui Least: Ke manaʻo nei kēia hoʻolālā e loaʻa i nā noi āpau ke kaumaha o ke kikowaena like. ʻO ka hopena, loaʻa i ke kikowaena me ka helu liʻiliʻi o nā noi i ka noi aʻe.
- IP Hash: Hoʻopuka kēia algorithm i kahi kī hash kū hoʻokahi e pili ana i ka mea kūʻai aku a me ke kumu o ka server a me nā helu IP wahi. Hoʻohana ʻia ke kī e ala i ka noi a hiki ke hoʻomaka hou i kahi pilina nalowale me ka server like.
Lako Paʻa Vs. Nā Pūnaehana Hoʻouka Pūnaehana
Mea Kaulike Hoʻouka Lako
ʻO nā lako kino, e like me ka mea hana, hana i nā mea kaulike ukana. Ke hele nei kēia mau ala i nā kikowaena ma muli o nā kumu e like me ka helu o nā pilina e kū nei, ka hoʻohana ʻana i ka mea hana, a me ka hana o ka server. Loaʻa i nā mea kaulike hoʻoili paʻa paʻa paʻa pono e mālama ʻia a hoʻonui ʻia ke loaʻa nā mana hou a me nā hoʻoponopono palekana.
Hāʻawi pinepine nā mea kaulike paʻa paʻa i ka hana kiʻekiʻe a me ka mana, a me kahi ākea ākea e like me ka Kerberos authentication a me SSL hardware acceleration, akā pono lākou i kahi pae o ka hoʻokele a me ka mākaukau mālama. Ma muli o ka liʻiliʻi o ka maʻalahi a hiki ke hoʻonui ʻia nā mea kaulike hoʻoili lako ma mua o nā mea kaulike hoʻouka lako polokalamu, aia ka makemake i ka hoʻolako ʻana i nā mea kaulike ukana lako.
Pūnaehana Hoʻouka Pūnaehana
ʻOi aku ka maʻalahi o ka hoʻonohonoho ʻana i nā mea kaulike haʻahaʻa lako polokalamu ma mua o ko lākou mau hoa hana. ʻOi aku ka maikaʻi o ke kumukūʻai a hiki ke hoʻololi ʻia, a hana maikaʻi lākou me nā kaiapuni hoʻomohala polokalamu. Hāʻawi ka polokalamu lako polokalamu iā ʻoe e hoʻopilikino i ka mea kaulike haʻahaʻa e like me nā koi pololei o kou kaiapuni. Hiki ke hoʻonui ʻia ka maʻalahi ma ka lilo o ka manawa hou i hoʻohana ʻia i ka hoʻonohonoho ʻana i ka mea kaulike ukana.
Hāʻawi nā mea kaulike polokalamu iā ʻoe i ka maʻalahi o ka hana ʻana i nā hoʻololi a me nā mea hou ma mua o nā lako lako, ʻoi aku ka paʻa o ka pahu. Hiki ke hoʻohana ʻia nā mīkini virtual prepackaged ma ke ʻano he software load balancers (VMs). Mālama nā mīkini virtual iā ʻoe i kahi manawa hoʻonohonoho, akā ʻaʻole paha i loaʻa iā lākou nā hana āpau i loaʻa i kā lākou mau hoa hana.
Hoʻokō ʻia ka hoʻokō ʻana i ka hoʻouka ʻana maʻalahi
E hoʻohana mākou i ka waihona Puna Puna i kūkulu i nā polokalamu e hoʻopili ai i nā polokalamu ʻē aʻe ma ke ʻano kaulike. ʻOiai ke kaʻina ʻana i nā noi lawelawe mamao, hiki iā mākou ke kūkulu maʻalahi i ka load balancing me ka hoʻohana ʻana i nā ʻenehana a mākou e makemake ai. E noʻonoʻo i kēia code ma ke ʻano he laʻana. E hoʻomaka mākou me kahi polokalamu kikowaena kumu.
E loaʻa i ka server hoʻokahi wale nō wahi hopena HTTP a e hoʻohana ʻia i kekahi mau manawa. A laila e kūkulu mākou i kahi polokalamu mea kūʻai aku e hoʻohana ana i ka Load Balancer e hāʻawi i nā noi i nā manawa kikowaena.
Kuʻia
Hoʻomaka mākou me kahi kumu ʻ bootpala puna noi no kā mākou kikowaena laʻana:
No ka hoʻomaka ʻana, hoʻokomo mākou i kahi ʻano hoʻololi i kapa ʻia ʻo instance_ID. Kōkua kēia iā mākou e hoʻokaʻawale i waena o nā manawa he nui e hana nei. Ma hope o kēlā, hana mākou i kahi hopena HTTP GET hoʻokahi e hoʻihoʻi i kahi memo a me kahi ID.
E holo ana ka la'ana pa'amau me ka ID 1 ma ke awa 8080. Pono mākou e ho'ohui i kekahi mau palena papahana no ka ho'omaka 'ana i ka lua.
Client
E nānā kākou i ke code client. ʻO kēia kahi e komo ai ʻo Load Balancer, no laila e hoʻomaka kākou e hoʻokomo i loko o kā mākou noi:
Ma hope o kēlā, kūkulu mākou i kahi hoʻokō o ServiceInstanceListSupplier. ʻO kēia kekahi o nā pilina koʻikoʻi loa ma Load Balancer. Hōʻike ia i ke ʻano o kā mākou ʻimi ʻana i nā manawa lawelawe hiki ke loaʻa.
E hoʻopaʻa inoa paʻa mākou i ʻelua mau manawa kaʻawale o kā mākou kikowaena laʻana i kā mākou palapala hoʻohālike. Holo lākou ma ka ʻōnaehana hoʻokahi akā hoʻohana i nā awa ʻokoʻa:
E hana i kahi papa LoadBalancerConfiguration i kēia manawa:
Hoʻokahi wale nō kumu o kēia papa: hana ʻo ia i kahi mea hana WebClient i kau ʻia no ka hana ʻana i nā noi mamao. Hoʻohana kā mākou hōʻike i kahi inoa kuhi no ka lawelawe.
ʻO kēia ma muli o ka ʻike ʻole paha mākou i nā inoa inoa pololei a me nā awa no ka holo ʻana i nā manawa ma mua o ka manawa. ʻO ka hopena, hoʻohana mākou i kahi inoa noʻonoʻo ma ke ʻano he wahi, a e hoʻololi ke framework i ka ʻike maoli ke koho ʻo ia i kahi hiʻohiʻona holo.
A laila, e hana kāua i papa Configuration e hoʻohana ʻia e hoʻomaka koke i kā mākou hāʻawi manawa lawelawe. E noʻonoʻo e hoʻohana mākou i ka inoa like me ka wā ma mua:
Hiki iā mākou ke kūkulu i ka noi mea kūʻai maoli. E hoʻouna kāua i nā nīnau he 10 i ke kikowaena laʻana me ka hoʻohana ʻana i ka WebClient bean mai ka wā ma mua:
Hiki iā mākou ke ʻike mai ka hoʻopuka ʻana e hoʻouka ana mākou ma waena o ʻelua mau manawa kaʻawale:
ʻO ka hoʻoili ʻana i ka hoʻouka ʻana i nā lawelawe Microservice
Ke hoʻohana ʻia nei ka hoʻolālā Microservice e kekahi mau hui, e like me Netflix a me Amazon, e hoʻomohala i nā noi ʻoihana ma ke ʻano he hoʻonohonoho o nā lawelawe pili ʻole. ʻO ka Hyperscale a me ka hāʻawi mau ʻana no nā noi paʻakikī ʻelua wale nō ke kumu o ka neʻe ʻana i kēia hoʻolālā hoʻolaha ʻia, pili ʻole ʻia.
Ua hoʻokō nā hui o kēia mau ʻoihana i nā hoʻolālā Agile a me DevOps i mea e hana wikiwiki ai i nā polokalamu a me ka haʻahaʻa haʻahaʻa haʻahaʻa ma mua o nā hana kuʻuna. Eia nō naʻe, pono ʻoe e kau i kahi kaulike ma waena o ka paʻakikī o ka hoʻolaha ʻana a me nā koi o ka noi, nā koi nui, a me nā palena manawa-i-market.
No nā makahiki he nui, he mea koʻikoʻi nā mea hoʻokele hoʻopuka noi (ADC) i ka hoʻokō ʻana i nā koi pae lawelawe no nā noi hui i hoʻokipa ʻia ma ka hale a i ke ao. ʻAʻole pono ka mea kūʻai aku e pili ana i kahi noi microservices e ʻike e pili ana i nā manawa e hāʻawi nei i mea e ulu ai ka mea kūʻai aku a me nā microservices kūʻokoʻa.
ʻO kēia ka decoupling i hāʻawi ʻia e kahi mea hoʻololi hoʻohuli a i ʻole kahi mea kaulike ukana. Eia hou, ʻo ka load balancing ka hopena no ka hōʻoia ʻana e hiki i nā microservices ke mālama i ka noi, palekana, a me ka loaʻa.
Ke hoʻohui ʻoe i ka hoʻohālikelike ukana ʻĀkau-South kuʻuna ma waena o ka mea kūʻai aku a me nā polokalamu e pili ana i nā microservices me East-West deployment no ka scalability ākea, loaʻa iā ʻoe kahi hoʻonui nui. ʻO ka pahuhopu ka mālama ʻana i ke kaiapuni palekana a hoʻoponopono ʻia e pono ai e IT me ka ʻole o ka kaumaha ʻana i ka agility hoʻomohala a i ʻole Hana a DevOps nā mea koi.
maika
Hāʻawi ka load balancing i nā pono like ʻole ma o ka hoʻomaikaʻi ʻana i ka hoʻohana ʻana i nā kumuwaiwai, ka hāʻawi ʻana i ka ʻikepili, a me ka manawa pane no nā pūnaewele a me nā polokalamu kaʻa nui, a me nā ʻikepili e loaʻa ai ka nui o nā nīnau. Hoʻomaopopo ka load balancing e hoʻokō koke ʻia nā noi mea hoʻohana i nā hiʻohiʻona kiʻekiʻe.
Mālama lākou i nā mea hoʻohana i ka hoʻopiʻi ʻana i ka hana ʻana i nā polokalamu lohi a me nā kumuwaiwai. ʻO ka load balancing kekahi kōkua e pale i ka downtime a maʻalahi i ka palekana, e hoʻohaʻahaʻa i ka pilikia o ka nalowale o ka huahana a me nā loaʻa kālā no kāu hui.
- Hāʻawi ka load balancing i ka maʻalahi e hoʻohui a wehe i nā kikowaena e like me ke koi ʻana o ke koi, ma kahi o ka hoʻokele ʻana i nā kaʻa i ka hana kūpono. Ma muli o ka hoʻohuli ʻia ʻana o ke kaʻa i nā kikowaena ʻē aʻe i ka wā o ka mālama ʻana, hiki nō hoʻi ke hana i ka mālama kikowaena me ka ʻole e hoʻopilikia i nā mea hoʻohana.
- Hāʻawi ka load balancing i ka redundancy i kūkulu ʻia ma ka hoʻokaʻawale ʻana i ke kaʻa ma waena o kahi pūʻulu o nā kikowaena. Hiki iā ʻoe ke hoʻohuli koke i ka ukana i nā kikowaena ʻē aʻe inā hāʻule kekahi, e hōʻemi ana i ka hopena i nā mea hoʻohana.
- Inā ulu ka hoʻohana ʻana a i ʻole ka hoʻohana ʻana i ka pūnaewele, hiki ke hoʻohaʻahaʻa ka hoʻonui ʻana i kāna hana inā ʻaʻole i mālama pono ʻia. Me ka load balancing, hiki iā ʻoe ke hoʻohui i kahi kikowaena maoli a virtual paha e hoʻokō i ka noi me ka ʻole e hoʻopau i ka lawelawe. Hoʻomaopopo ka load balancer i nā kikowaena hou i ko lākou hele ʻana mai ma ka pūnaewele a hoʻokomo pono iā lākou i loko o ka hana. ʻOi aku ka maikaʻi o kēia ala ma mua o ka neʻe ʻana i kahi pūnaewele mai kahi kikowaena overburdened i kahi mea hou, e pili pinepine ana i kahi manawa hoʻomaha.
Panina
He mea koʻikoʻi ka load balancing o nā ʻōnaehana hoʻomanawanui hewa. Hiki iā mākou ke kūkulu i nā polokalamu e hāʻawi ana i nā noi i nā manawa lawelawe he nui me ka hoʻohana ʻana i nā ala hoʻohālikelike ukana. Pono nā ʻoihana e kākoʻo i nā ʻōnaehana IT paʻakikī e hoʻolako i nā noi me ka palekana.
ʻO ka hoʻonohonoho ʻana o nā microservices cross-domain, hoʻolalelale, a me ka mālama ʻana, hiki ke hewa, pipiʻi, a hoʻopau manawa. Pono ʻo IT e hoʻohana i ka automation, visibility, analytics, a me orchestration o nā hana maikaʻi loa a me nā ʻenehana i kūpono i kā lākou agile a me nā kaʻina DevOps e maʻalahi ai ka hoʻonohonoho ʻana a me ka mālama ʻana i kēia mau microservices.
Waiho i ka Reply