Nā kōkua a me nā kumuwaiwai no ke kūkulu ʻana i nā polokalamu serverless

Nā kōkua a me nā kumuwaiwai no ke kūkulu ʻana i nā polokalamu serverless
ʻOiai ua kaulana nā ʻenehana serverless i nā makahiki i hala iho nei, aia nō ka nui o nā kuhi hewa a me nā hopohopo e pili ana iā lākou. ʻO ka hilinaʻi o ka mea kūʻai aku, ka mea hana, ka hoʻokele waiwai, ka hoʻomaka anuanu, ka nānā ʻana a me ka hoʻomohala ʻana i ke ola ola he mau kumuhana i hoʻopaʻapaʻa nui ʻia i ka wā e pili ana i nā ʻenehana serverless. Ma kēia ʻatikala, e ʻimi mākou i kekahi o nā kumuhana i haʻi ʻia, a me ka hāʻawi ʻana i nā ʻōlelo aʻoaʻo a me nā loulou i nā kumuwaiwai kōkua e kōkua i ka poʻe hoʻomaka e kūkulu i nā polokalamu serverless ikaika, maʻalahi, a me ke kumu kūʻai.

Manaʻo kuhihewa e pili ana i nā ʻenehana serverless

Manaʻo ka nui o ka poʻe he serverless a serverless data processing (Hana ma ke ano he lawelawe, FaaS) aneane like. ʻO ia ke ʻano ʻaʻole nui loa ka ʻokoʻa a pono ke hoʻokomo i kahi huahana hou. ʻOiai ʻo AWS Lambda kekahi o nā hōkū o ka piʻi ʻana o ka ʻenehana serverless a me kekahi o nā mea kaulana loa o ka hoʻolālā serverless, ʻoi aku ka nui o kēia hoʻolālā ma mua o FaaS.

ʻO ke kumu nui o ka serverless ʻaʻole pono ʻoe e hopohopo e pili ana i ka mālama ʻana a i ʻole ka hoʻonui ʻana i kāu ʻōnaehana; uku wale ʻoe no ka mea āu e hoʻohana ai. Nui nā lawelawe i kūpono i kēia mau koina - AWS DynamoDB, S3, SNS a i ʻole SQS, Graphcool, Auth0, Now, Netlify, Firebase a me nā mea ʻē aʻe he nui. Ma keʻano laulā, serverless ʻo ia ka hoʻohana ʻana i nā mana āpau o ka computing cloud me ka ʻole o ka pono e hoʻokele a hoʻomaikaʻi i ka ʻōnaehana no ka scaling. ʻO ia hoʻi ʻo ka palekana ma ka pae ʻenehana ʻaʻole ia kou pilikia, ʻo ia ka pōmaikaʻi nui i hāʻawi ʻia i ka paʻakikī a me ka paʻakikī o ka hālāwai ʻana i nā kūlana palekana. ʻO ka hope, ʻaʻole pono ʻoe e kūʻai i nā ʻōnaehana i hāʻawi ʻia iā ʻoe.

Hiki ke manaʻo ʻia ʻo Serverless he "kūlana noʻonoʻo": kahi noʻonoʻo i ka wā e hoʻolālā ai i nā hoʻonā. E hōʻalo i nā ala e pono ai ka mālama ʻana i kekahi ʻano hana. Me kahi ala lawelawe ʻole, hoʻolilo mākou i ka manawa e hoʻoponopono ai i nā pilikia e pili pono ana i ka papahana a lawe i ka waiwai i kā mākou mea hoʻohana: hana i ka loiloi ʻoihana ikaika, hoʻomohala i nā mea hoʻohana, a me ka hoʻomohala ʻana i nā API kūpono a hilinaʻi.

No ka laʻana, inā hiki ke pale aku i ka mālama ʻana a me ka mālama ʻana i kahi kahua huli kikokikona manuahi, a laila ʻo ia kā mākou e hana ai. Hiki i kēia ala i ke kūkulu ʻana i nā noi ke wikiwiki i ka manawa i ka mākeke no ka mea ʻaʻole pono ʻoe e noʻonoʻo e pili ana i ka hoʻokele ʻana i nā ʻōnaehana paʻakikī. E hoʻokuʻu iā ʻoe iho mai nā kuleana a me nā kumukūʻai o ka hoʻokele waiwai a nānā i ke kūkulu ʻana i nā noi a me nā lawelawe e pono ai kāu mea kūʻai. Ua kapa ʻo Patrick Debois i kēia ala 'hana lawelawe', ʻae ʻia kēia huaʻōlelo ma ke kaiāulu serverless. Pono e noʻonoʻo ʻia nā hana e like me ke kāpili e hoʻopili ai i nā lawelawe e like me nā modula hiki ke hoʻoili ʻia (ma mua o ka waiho ʻana i kahi waihona āpau a i ʻole ka noi pūnaewele). Hāʻawi kēia i ka granularity maikaʻi loa no ka hoʻokele ʻana i nā deployments a me nā loli i ka noi. Inā ʻaʻole hiki iā ʻoe ke kau i nā hana ma kēia ala, hōʻike paha ia he nui nā hana a pono e hoʻoponopono hou ʻia.

Pilikia kekahi poʻe e ka hilinaʻi o ka mea kūʻai aku i ka wā e hoʻomohala ai i nā noi kapua. Pēlā nō me nā ʻenehana serverless, a ʻaʻole paha kēia ka hopena o kahi kuhi hewa. I ko mākou ʻike, ke kūkulu ʻana i nā noi kikowaena ʻole ma AWS, i hui pū ʻia me ka hiki o AWS Lambda e hōʻuluʻulu i nā lawelawe AWS ʻē aʻe, he ʻāpana ia o ka mea e hoʻomaikaʻi ai i nā hale kiʻi serverless. He laʻana maikaʻi kēia o ka synergy, ke ʻoi aku ka nui o ka hopena o kahi hui ma mua o ka huina o kāna mau ʻāpana. ʻO ka hoʻāʻo ʻana e pale i ka mea kūʻai aku laka-i hiki ke alakaʻi i nā pilikia hou aʻe. I ka hana ʻana me nā ipu, ʻoi aku ka maʻalahi o ka mālama ʻana i kāu papa abstraction ma waena o nā mea hāʻawi kapua. Akā i ka wā e pili ana i nā hoʻonā serverless, ʻaʻole e uku ʻia ka hoʻoikaika ʻana, ʻoiai inā e noʻonoʻo ʻoe i ke kumu kūʻai mai ka hoʻomaka. E ʻike pono pehea e hāʻawi ai nā mea kūʻai aku i nā lawelawe. Ke hilinaʻi nei kekahi mau lawelawe kūikawā i nā wahi hoʻohui me nā mea kūʻai aku a hāʻawi paha i ka pilina plug-a-pāʻani ma waho o ka pahu. ʻOi aku ka maʻalahi o ka hāʻawi ʻana i kahi kelepona Lambda mai kahi hopena API ma mua o ke koho ʻana i ka noi i kekahi pahu a i ʻole EC2 laʻana. Hiki iā Graphcool ke hoʻonohonoho maʻalahi me ka hoʻohana ʻana iā Auth0, ʻoi aku ka maʻalahi ma mua o ka hoʻohana ʻana i nā mea hana hōʻoia ʻaoʻao ʻekolu.

ʻO ke koho ʻana i ka mea kūʻai kūpono no kāu noi serverless he hoʻoholo pae kiʻekiʻe. Ke hana ʻoe i kahi noi, ʻaʻole ʻoe e manaʻo e hoʻi hou i kahi lā i ka mālama ʻana i nā kikowaena. ʻAʻole ʻokoʻa ke koho ʻana i kahi mea kūʻai kapua ma mua o ke koho ʻana e hoʻohana i nā ipu a i ʻole kahi waihona, a i ʻole kahi ʻōlelo hoʻonohonoho.

E noʻonoʻo:

  • He aha nā lawelawe āu e pono ai a no ke aha.
  • He aha nā lawelawe i hāʻawi ʻia e nā mea hāʻawi kapuaʻi a pehea ʻoe e hoʻohui ai iā lākou me ka hoʻohana ʻana i ka hopena FaaS i koho ʻia.
  • He aha nā ʻōlelo hoʻonohonoho e kākoʻo ʻia (dynamically a statically typed, compiled or interpreted, he aha nā benchmarks, he aha ka hana hoʻomaka anuanu, he aha ka open source ecosystem, etc.).
  • He aha kāu mau koi palekana (SLA, 2FA, OAuth, HTTPS, SSL, etc.).
  • Pehea e hoʻokele ai i kāu CI/CD a me nā pōʻai hoʻomohala polokalamu.
  • He aha nā ʻōnaehana-as-code e hiki ai iā ʻoe ke hoʻohana pono?

Inā ʻoe e hoʻonui ana i kahi noi i loaʻa a hoʻohui i nā hana serverless i hoʻonui ʻia, hiki i kēia ke kaupalena i nā hiki i loaʻa. Eia nō naʻe, ʻaneʻane nā ʻenehana serverless e hāʻawi i kekahi ʻano API (ma o ka REST a i ʻole ka queuing memo) e hiki ai iā ʻoe ke hana i nā hoʻonui kūʻokoʻa mai ke kumu noi a me ka hoʻohui maʻalahi. E ʻimi i nā lawelawe me nā API maopopo, nā palapala maikaʻi a me kahi kaiāulu ikaika, a ʻaʻole hiki iā ʻoe ke hele hewa. ʻO ka maʻalahi o ka hoʻohui ʻana hiki ke lilo i kumu nui, a ʻo ia paha kekahi o nā kumu nui i kūleʻa ai ʻo AWS mai ka puka ʻana mai o Lambda i 2015.

I ka manawa hea e pono ai ka serverless?

Hiki ke hoʻohana ʻia nā ʻenehana serverless kokoke i nā wahi āpau. Eia naʻe, ʻaʻole i kaupalena ʻia ko lākou mau pono i nā ʻano o ka noi. He haʻahaʻa loa ka pale i ke komo ʻana no ka computing kapua i kēia lā ma muli o nā ʻenehana serverless. Inā he manaʻo ko nā mea hoʻomohala, akā ʻaʻole lākou i ʻike pehea e hoʻokele ai i nā ʻōnaehana kapuaʻi a hoʻonui i nā kumukūʻai, a laila ʻaʻole pono lākou e ʻimi i kekahi ʻenekinia e hana. Inā makemake ka mea hoʻomaka e kūkulu i kahi kahua akā hopohopo e hiki ke lilo i nā kumukūʻai mai ka mana, hiki iā lākou ke huli maʻalahi i nā ʻōnaehana serverless.

Mahalo i ka mālama ʻana i ke kumu kūʻai a me ka maʻalahi o ka scaling, pili like nā ʻōnaehana serverless i nā ʻōnaehana kūloko a me waho, a hiki i kahi noi pūnaewele me ka lehulehu miliona miliona. Ana ʻia nā moʻokāki ma ke keneta ma mua o ka euro. ʻO ka hoʻolimalima ʻana i ka mea maʻalahi AWS EC2 (t1.micro) no hoʻokahi mahina e uku ʻia ʻo €15, ʻoiai inā ʻaʻole ʻoe e hana i kekahi mea me ia (ʻo wai ka mea i poina e hoʻopau iā ia?!). I ka hoʻohālikelike ʻana, no ka hoʻokō ʻana i kēia pae o ka hoʻolilo ʻana i ka manawa like, pono ʻoe e holo i kahi 512 MB Lambda no 1 kekona ma kahi o 3 miliona mau manawa. A inā ʻaʻole ʻoe e hoʻohana i kēia hiʻohiʻona, ʻaʻole ʻoe e uku i kekahi mea.

No ka mea ʻo ka serverless ka mea i alakaʻi nui ʻia i ka hanana, maʻalahi ka hoʻohui ʻana i nā ʻōnaehana serverless i nā ʻōnaehana hoʻoilina. No ka laʻana, me ka hoʻohana ʻana iā AWS S3, Lambda, a me Kinesis, hiki iā ʻoe ke hana i kahi lawelawe analytics no kahi ʻōnaehana kūʻai hoʻoilina e hiki ke loaʻa i ka ʻikepili ma o kahi API.

Kākoʻo ka hapa nui o nā paepae serverless i nā ʻōlelo he nui. ʻO ka hapa pinepine ʻo Python, JavaScript, C#, Java a me Go. ʻO ka maʻamau, ʻaʻohe palena o nā ʻōlelo āpau i ka hoʻohana ʻana i nā hale waihona puke, no laila hiki iā ʻoe ke hoʻohana i kāu mau waihona punahele punahele. Eia nō naʻe, ʻoi aku ka maikaʻi ʻaʻole e hoʻohana nui i nā hilinaʻi i hiki i kāu mau hana ke hana maikaʻi loa a ʻaʻole e hoʻopau i nā pono o ka scalability nui o kāu mau noi serverless. ʻO ka nui o nā pūʻolo e pono e hoʻouka ʻia i loko o ka pahu, ʻoi aku ka lōʻihi o ka hoʻomaka anu.

ʻO kahi hoʻomaka anu i ka wā e pono ai ʻoe e hoʻomaka i ka ipu, ka manawa holo, a me ka mea hoʻoponopono hewa ma mua o ka hoʻohana ʻana iā lākou. Ma muli o kēia, hiki ke lohi i ka hana ʻana i nā hana a hiki i 3 kekona, a ʻaʻole kēia ke koho maikaʻi loa no nā mea hoʻohana hoʻomanawanui. Eia naʻe, hoʻomaka ke anu ma ke kelepona mua ma hope o kekahi mau minuke o ka hana ʻole. Nui ka poʻe i manaʻo he pilikia liʻiliʻi kēia e hiki ke hoʻoponopono ʻia ma ka ping mau ʻana i ka hana e hoʻomau i ka hana. A i ʻole lākou e haʻalele i kēia ʻano.

ʻOiai ua hoʻokuʻu ʻia ʻo AWS serverless SQL database Serverless AuroraEia naʻe, ʻaʻole kūpono nā ʻikepili SQL no kēia ʻano hoʻohana no ka mea ke hilinaʻi nei lākou i nā pilina e hana i nā kālepa, hiki ke lilo koke i bottleneck i ka wā he nui nā kaʻa ma AWS Lambda. ʻAe, ke hoʻomaikaʻi mau nei nā mea hoʻomohala i Serverless Aurora, a pono ʻoe e hoʻokolohua me ia, akā i kēia lā nā ʻōnaehana NoSQL e like me ʻO DynamoDB. Eia naʻe, ʻaʻohe kānalua e loli koke kēia kūlana.

Hoʻokomo ka toolkit i nā palena he nui, ʻoi aku hoʻi i ka wahi o ka hoʻāʻo kūloko. ʻOiai aia nā hoʻonā e like me Docker-Lambda, DynamoDB Local a me LocalStack, koi lākou i ka hana painstaking a me ka nui o ka hoʻonohonoho. Eia naʻe, ke ulu ikaika nei kēia mau papahana a pau, no laila he manawa wale nō ma mua o ka hiki ʻana o nā mea hana i ka pae e pono ai mākou.

Ka hopena o nā ʻenehana serverless i ka pōʻai hoʻomohala

Ma muli o ka hoʻonohonoho maʻalahi o kāu ʻōnaehana, hiki iā ʻoe ke wehewehe a kau i ka code me ka hoʻohana ʻana i nā palapala, e like me nā script shell. A i ʻole hiki iā ʻoe ke hoʻohana i nā hoʻonā papa hoʻonohonoho-as-code like AWS Cloud Formation. ʻOiai ʻaʻole hāʻawi kēia lawelawe i ka hoʻonohonoho no nā wahi āpau, hiki iā ʻoe ke wehewehe i nā kumuwaiwai kikoʻī no ka hoʻohana ʻana i nā hana Lambda. ʻO ia, kahi i hāʻule ʻole ai ʻo CloudFormation iā ʻoe, hiki iā ʻoe ke kākau i kāu kumuwaiwai ponoʻī (Lambda function) e pani i kēia āpau. Ma kēia ala hiki iā ʻoe ke hana i kekahi mea, ʻoiai e hoʻonohonoho i nā hilinaʻi ma waho o kāu kaiapuni AWS.

No ka mea ʻo ia wale nō ka hoʻonohonoho ʻana, hiki iā ʻoe ke hoʻohālikelike i kāu mau palapala hoʻolālā no nā kaiapuni kikoʻī, nā ʻāina, a me nā mea hoʻohana, ʻoiai inā ʻoe e hoʻohana nei i nā ʻōnaehana infrastructure-as-code e like me CloudFormation. No ka laʻana, hiki iā ʻoe ke kau i kope o ka ʻōnaehana no kēlā me kēia lālā i ka waihona i hiki iā ʻoe ke hoʻāʻo iā lākou i kahi kaʻawale i ka wā o ka hoʻomohala ʻana. ʻO kēia ka wikiwiki i ka manawa e loaʻa ai i nā mea hoʻomohala nā manaʻo ke makemake lākou e hoʻomaopopo inā hana maikaʻi kā lākou code i kahi nohona ola. ʻAʻole hopohopo nā luna e pili ana i ke kumukūʻai o ka lawe ʻana i nā kaiapuni lehulehu no ka mea uku wale lākou no ka hoʻohana maoli.

ʻAʻole hopohopo ʻo DevOps no ka mea pono lākou e hōʻoia i ka hoʻonohonoho pololei ʻana o nā mea hoʻomohala. ʻAʻole hoʻokele hou i nā manawa, nā mea kaulike, a i ʻole nā ​​hui palekana. No laila, ke hoʻohana nui ʻia nei ka huaʻōlelo NoOps, ʻoiai he mea nui ia e hiki ke hoʻonohonoho i ka ʻōnaehana, ʻoi aku hoʻi i ka wā e pili ana i ka hoʻonohonoho IAM a me ka hoʻonui ʻana i nā kumuwaiwai ao.

Aia nā mea nānā ikaika loa a ʻike ʻia e like me Epsagon, Thundra, Dashbird a me IOPipe. Hāʻawi lākou iā ʻoe e nānā i ke kūlana o kēia manawa o nā noi serverless, hāʻawi i nā lāʻau a me nā traces, hopu i nā metric hana a me nā bottlenecks kūkulu hale, hana i ka nānā ʻana i ke kumukūʻai a me ka wānana, a ʻoi aku ka nui. ʻAʻole wale lākou e hāʻawi i nā mea ʻenekini DevOps, nā mea hoʻomohala, a me nā mea hoʻolālā i kahi ʻike piha o ka hana noi, akā hiki iā lākou ke ʻae i nā mana e loaʻa ka ʻike i ka manawa maoli, ka lua-ke-kekona hoʻolimalima waiwai a me ka wānana kumukūʻai. ʻOi aku ka paʻakikī o ka hoʻonohonoho ʻana i kēia me kahi ʻōnaehana hoʻokele.

ʻOi aku ka maʻalahi o ka hoʻolālā ʻana i nā polokalamu serverless no ka mea ʻaʻole pono ʻoe e kau i nā kikowaena pūnaewele, hoʻokele i nā mīkini virtual a i ʻole nā ​​ipu, nā server patch, nā ʻōnaehana hana, nā puka pūnaewele, a me nā mea ʻē aʻe. ʻoihana a me nā mea kūʻai aku pono.

ʻOiai ʻoi aku ka maikaʻi o ka mea hana (e hoʻomaikaʻi ana i kēlā me kēia lā), hiki i nā mea hoʻomohala ke nānā aku i ka hoʻokō ʻana i ka loiloi ʻoihana a pehea e hoʻohele maikaʻi ai i ka paʻakikī o ka noi ma nā lawelawe like ʻole i loko o ka hale hana. Hoʻokumu ʻia ka hoʻokele hoʻokele waiwai ʻole i ka hanana a hoʻokaʻawale ʻia e ka mea hāʻawi kapuaʻi (no ka laʻana, SQS, S3 hanana a i ʻole nā ​​kahawai DynamoDB). No laila, pono nā mea hoʻomohala e kākau i ka loiloi pāʻoihana e pane i kekahi mau hanana, a ʻaʻole hopohopo e pili ana i ka maikaʻi o ka hoʻokō ʻana i nā waihona a me nā queues memo, a i ʻole pehea e hana maikaʻi ai me ka ʻikepili i loko o nā waihona lako lako.

Hiki ke hoʻokō ʻia a hoʻopau ʻia ke code ma ka ʻāina, e like me ke kaʻina hana hoʻomohala. Ua mau ka ho'āʻo ʻana. Hiki i nā mea hoʻomohala ke loaʻa koke i nā manaʻo koʻikoʻi me ka hopohopo ʻole i ke kumukūʻai o ka hoʻāʻo ʻana a i ʻole ka hopena i nā kaiapuni i mālama ʻia.

Nā mea hana a me nā ʻenehana no ke kūkulu ʻana i nā polokalamu serverless

ʻAʻohe ala kikoʻī e kūkulu i nā noi serverless. A me kahi hoʻonohonoho o nā lawelawe no kēia hana. ʻO ke alakaʻi ma waena o nā hoʻonā serverless ikaika i kēia lā ʻo AWS, akā e hoʻolohe Google Kapua, manawa и Firebase. Inā ʻoe e hoʻohana nei i ka AWS, a laila hiki iā mākou ke ʻōlelo aku i kahi ala e hōʻiliʻili ai i nā noi Ke Ana Hoʻohālike No Serverless (SAM), i ka wā e hoʻohana ai iā C#, no ka mea, he mau mea hana nui ʻo Visual Studio. Hiki i ka SAM CLI ke hana i nā mea a pau e hiki ai iā Visual Studio ke hana, no laila ʻaʻole e nalowale kekahi mea inā hoʻololi ʻoe i kahi IDE ʻokoʻa a i ʻole ka mea hoʻoponopono kikokikona. ʻOiaʻiʻo, hana pū ʻo SAM me nā ʻōlelo ʻē aʻe.

Inā kākau ʻoe ma nā ʻōlelo ʻē aʻe, ʻo ka Serverless Framework kahi mea hoʻohana punaewele wehe maikaʻi loa e hiki ai iā ʻoe ke hoʻonohonoho i kekahi mea me ka hoʻohana ʻana i nā faila hoʻonohonoho YAML ikaika loa. Kākoʻo pū ʻo Serverless Framework i nā lawelawe kapuaʻi like ʻole, no laila ke paipai nei mākou i ka poʻe e ʻimi nei i kahi hoʻonā multi-cloud. Loaʻa iā ia kahi kaiāulu nui i hana i kahi hui o nā plugins no kēlā me kēia pono.

No ka hoʻāʻo ʻana i ka ʻāina, kūpono nā mea hana open source Docker-Lambda, Serverless Local, DynamoDB Local a me LocalStack. Aia nā ʻenehana serverless i ka wā mua o ka hoʻomohala ʻana, e like me nā mea hana no lākou, no laila pono ʻoe e hana ikaika i ka wā e hoʻonohonoho ai i nā hiʻohiʻona hoʻāʻo paʻakikī. Eia nō naʻe, ʻo ka hoʻohana wale ʻana i ka puʻupuʻu i loko o ke kaiapuni a me ka hoʻāʻo ʻana iā ia ma laila e lilo i mea maʻalahi loa. A ʻaʻole pono ʻoe e hana i kope kūloko pololei o kāu kaiapuni ao.

E hoʻohana i ka AWS Lambda Layers e hōʻemi i ka nui o ka pūʻolo i hoʻoili ʻia a hoʻokē wikiwiki i ka manawa hoʻouka.

E hoʻohana i nā ʻōlelo papahana kūpono no nā hana kikoʻī. Loaʻa i nā ʻōlelo like ʻole ko lākou pono a me nā hemahema. Nui nā pae hoʻohālike, akā ʻo JavaScript, Python, a me C# (.NET Core 2.1+) nā alakaʻi i ka hana o AWS Lambda. Ua hoʻopuka hou ʻo AWS Lambda i kahi API Runtime e hiki ai iā ʻoe ke kuhikuhi i kāu ʻōlelo makemake a me ke kaiapuni holo manawa, no laila e hoʻokolohua.

E mālama i ka nui o ka pūʻolo hoʻolaha. ʻO ka liʻiliʻi o lākou, ʻoi aku ka wikiwiki o ka hoʻouka ʻana. E hōʻalo i ka hoʻohana ʻana i nā hale waihona puke nui, ʻoiai inā ʻoe e hoʻohana i ʻelua mau hiʻohiʻona mai ia mau mea. Inā hoʻolālā ʻoe ma JavaScript, e hoʻohana i nā mea hana kūkulu e like me Webpack e hoʻomaikaʻi i kāu kūkulu ʻana a hoʻokomo wale i kāu mea e pono ai. NET Core 3.0 me QuickJit a me Tiered Compilation, e hoʻomaikaʻi i ka hana a kōkua nui i ka hoʻomaka anu.

ʻO ka hilinaʻi ʻana o nā hana serverless i nā hanana hiki ke paʻakikī i ka hoʻonohonoho ʻana i ka loiloi ʻoihana i ka wā mua. Hiki ke hoʻohana maikaʻi ʻia nā queues me nā mīkini mokuʻāina ma kēia ʻano. Hiki i nā hana Lambda ke kāhea i kekahi i kekahi, akā e hana wale i kēia inā ʻaʻole ʻoe e manaʻo i kahi pane ("ahi a poina") - ʻaʻole ʻoe makemake e kiʻi ʻia no ke kali ʻana i kahi hana ʻē aʻe e hoʻopau. Pono nā pila memo no ka hoʻokaʻawale ʻana i nā ʻāpana o ka loiloi ʻoihana, ka hoʻokele ʻana i nā bottlenecks noi, a me ka hoʻoili ʻana i nā hana (me ka hoʻohana ʻana i nā queues FIFO). Hiki ke hāʻawi ʻia nā hana AWS Lambda i nā queues SQS e like me nā queues memo paʻa e hahai ana i nā memo i hāʻule no ka nānā ʻana ma hope. He mea pono loa nā AWS Step Functions (nā mīkini mokuʻāina) no ka hoʻokele ʻana i nā kaʻina hana paʻakikī e pono ai ke kaulahao o nā hana. Ma kahi o kahi hana Lambda e kāhea ana i kahi hana ʻē aʻe, hiki i nā hana Step ke hoʻonohonoho i nā hoʻololi mokuʻāina, hāʻawi i ka ʻikepili ma waena o nā hana, a mālama i ke kūlana honua o nā hana. ʻAe kēia iā ʻoe e wehewehe i nā kūlana hoʻāʻo hou, a i ʻole ka mea e hana ai ke kū mai kahi hewa kikoʻī - he mea hana ikaika loa ma lalo o kekahi mau kūlana.

hopena

I nā makahiki i hala iho nei, ke ulu nei nā ʻenehana serverless i kahi wikiwiki i ʻike ʻole ʻia. Aia kekahi mau kuhi hewa e pili ana i kēia hoʻololi paradigm. Ma ka hoʻokaʻawale ʻana i nā ʻōnaehana a me ka hoʻokele ʻana i ka scalability, hāʻawi nā ʻōnaehana serverless i nā pōmaikaʻi nui, mai ka hoʻomohala maʻalahi a me nā kaʻina DevOps i nā hōʻemi nui o nā kumukūʻai hana.
ʻOiai ʻaʻole me ka ʻole o ka serverless approaches, aia nā hiʻohiʻona hoʻolālā hilinaʻi e hiki ke hoʻohana ʻia no ka hana ʻana i nā noi serverless ikaika a i ʻole e hoʻohui i nā mea kikowaena ʻole i loko o nā hale kūkulu.

Source: www.habr.com

Pākuʻi i ka manaʻo hoʻopuka