Гарчиг[Нуух][Үзүүлэх]
- 1. AWS Lambda гэж яг юу вэ?
- 2. Автоматжуулсан байршуулалт гэж яг юу вэ?
- 3. Amazon Web Services Lambda хэрхэн ажилладаг вэ?
- 4. Lambda-ийн автоматаар масштаблах нь юу гэсэн үг вэ?
- 5. AWS Lambda ямар хэлийг дэмждэг вэ?
- 6. AWS Lambda нь байршуулалтыг автоматжуулах ямар функцийг хангадаг вэ?
- 7. AWS lambda функцийн кодонд ямар хязгаарлалт тавигддаг вэ?
- 8. EC2 нь AWS Lambda-аас юугаараа ялгаатай вэ?
- 9. Ямар нөхцөл байдал AWS Lambda функцийг өдөөж болох вэ?
- 10. Ламбда-г цаг хэмнэдэг ямар хүчин зүйл гэж та үзэж байна вэ?
- 11. AWS Lambda-ийн хэд хэдэн сул талууд юу вэ?
- 12. Сул зогсолтыг тэглэх талаар та ямар бодолтой байна вэ?
- 13. AMI-г тайлбарла.
- 14. Тохиолдол ба AMI хоорондоо холбоотой гэдэгт та итгэдэг үү?
- 15. Ламбдагийн аюулгүй байдлын шилдэг туршлагууд юу вэ?
- 16. Ламбда уян блокны хадгалалт гэж юу вэ?
- 17. AMI бий болгох талаар та хэр ойлгодог вэ?
- 18. Ламбда илэрхийллийн талаар та ямар ойлголттой байдаг вэ?
- 19. AWS lambda дахь SQS болон түүний гүйцэтгэх үүрэг хариуцлагыг тайлбарла.
- 20. Lambda-ийн тусламжтайгаар босоо масштабыг хийх боломжтой юу?
- 21. Сервергүй програмыг эхлүүлэх: би юу хийх ёстой вэ?
- 22. Сервергүй програмын алдааг хэрхэн арилгах вэ?
- 23. Ламбда функц нь нэргүй ангиас юугаараа ялгаатай вэ?
- 24. Нэгэн зэрэг ажиллуулж болох AWS Lambda функцүүдийн дээд тоо байгаа юу?
- 25. Ламбда-г бүтээхдээ ямар практик хэрэглээний тохиолдлуудыг санаж байсан бэ?
- 26. AWS Lambda-тай ямар төрлийн программуудыг гүйцэтгэж болох вэ?
- 27. Lambda дахь AVX2 векторжуулалт нь юу гэсэн үг вэ?
- Дүгнэлт
Amazon Web Services (AWS)-ээр дамжуулан 200 гаруй үйлчилгээг авах боломжтой.
AWS LambdaГэсэн хэдий ч хэд хэдэн шалтгааны улмаас тусдаа хэвээр байна. AWS платформд зориулсан үйл явдалд суурилсан сервергүй тооцоолох үйлчилгээг AWS Lambda гэж нэрлэдэг.
Үйл явдалд тулгуурласан функцээр тооцоолсон үйл явдлууд нь өөр өөр төрлийн оролт болох триггерүүдийн хариуд автоматаар үүсдэг.
Хэдийгээр AWS Lambda экосистем нь зөвхөн үйлчилгээний (FaaS) функцээс илүү олон зүйлийг агуулдаг боловч үүнийг ихэвчлэн ийм гэж нэрлэдэг. Үйл явдалд тулгуурласан функцууд дээр, дараа нь илүү их.
Хөгжүүлэгчид сервергүй тооцооллын ачаар захиргааны хариуцлагын талаар санаа зовохгүйгээр Lambda ашиглан код үүсгэж, ажиллуулж болно.
Тохирох AWS Lambda ярилцлагын асуултууд нь таныг туршлагатай мэргэжилтэн эсвэл шинээр ажилд орсон эсэхээс үл хамааран FAANG-тай хийх технологийн ярилцлагад чухал нөлөө үзүүлж чадна.
Төрөл бүрийн компаниудтай ярилцлага хийхэд бэлэн байхад тань туслах үүднээс бид энэ нийтлэл дэх AWS Lambda-ийн ярилцлагын асуултуудыг энгийнээс нарийн хүртэл авч үзэх болно.
1. AWS Lambda гэж яг юу вэ?
AWS Web Services Amazon нь үйл явдалд суурилсан тооцоололд зориулсан сервергүй платформ болох Lambda-г санал болгодог.
Үүний үр дүнд та зөв AWS нөөцийг эхлүүлэх эсвэл үр дүнтэй удирдах талаар санаа зовох шаардлагагүй болно. Үүний оронд та кодыг Lambda дээр байрлуулж ажиллуулж болно.
S3 хувингаас файл нэмэх, устгах, Amazon API гарцаас HTTP хүсэлтийг хүлээн авах гэх мэт AWS үйлчилгээний үйл явдлын хариуд кодыг AWS Lambda дээр ажиллуулдаг.
Нөгөө талаас Amazon Lambda нь зөвхөн далд үйл ажиллагаануудаар хязгаарлагддаг. AWS Lambda нь үйлдлийн системийн (OS) хандалтын хяналт, засвар хийх, зөв хэмжээсийг тохируулах, нөөц бүрдүүлэх, масштаблах болон бусад ажлуудыг гүйцэтгэхийн оронд үндсэн бүтээгдэхүүн болон бизнесийн логик дээрээ анхаарлаа төвлөрүүлэх боломжийг олгодог.
2. Автоматжуулсан байршуулалт гэж яг юу вэ?
Бусад хэл дээрх програмчлал нь автоматжуулсан байршуулалттай төстэй боловч хүндрэл багатай байдаг. Нэмж дурдахад, энэ нь хүний аливаа хөндлөнгийн оролцоог багасгаж, компаниудад чанарын хувьд хамгийн их үр дүнд хүрэхэд тусалдаг.
Хүн ур чадвар эзэмшсэнээр дамжуулах хоолойг хялбархан байрлуулж болно.
3. Amazon Web Services Lambda хэрхэн ажилладаг вэ?
Хэдийгээр AWS Lambda нь эхэндээ тодорхойгүй мэт санагдаж болох ч үнэндээ тийм биш юм.
Үнэн хэрэгтээ энэ нь 3 алхамтай энгийн арга юм.
- Кодоо AWS Lambda-д байршуулах нь эхний алхам юм.
- Дараа нь кодоо бусад AWS үйлчилгээнүүд, HTTP төгсгөлийн цэгүүд эсвэл гар утасны програмууд өдөөхөөр тохируулна уу.
- Таны кодыг ажиллуулахад шаардагдах тооцооллын нөөцийг зөвхөн AWS Lambda идэвхжүүлсэн үед л ашиглах болно.
4. Lambda-ийн автоматаар масштаблах нь юу гэсэн үг вэ?
Шинэ инстансуудыг автоматаар үүсгэж, эхлүүлэхэд хялбар болгодог AWS үйлчилгээний нэг бол энэ юм. AWS Auto Scaling нь ямар ч үед хөндлөнгийн оролцоо шаарддаггүй нь түүний хамгийн хүчтэй шинж чанаруудын нэг юм.
Гэсэн хэдий ч хэрэглэгчид хэмжүүр, шалгуурыг ашиглан бүх зүйлийг хянах боломжтой. Энэ даалгаврыг идэвхжүүлэхийн тулд босгыг давах ёстой бөгөөд дараа нь хөндлөнгийн масштабтай тохиолдлуудыг ямар ч саадгүйгээр харж болно.
5. AWS Lambda ямар хэлийг дэмждэг вэ?
- C#
- Ruby
- Go
- Java
- Python
- js
- PowerShell
6. AWS Lambda нь байршуулалтыг автоматжуулах ямар функцийг хангадаг вэ?
Байгаль орчинд хамаарах хувьсагчдыг AWS lambda дэмждэг. Байршуулах багцыг өөрчлөх үед тэдгээрийг өгөгдөл болон төрөл бүрийн нэмэлт итгэмжлэлд ашиглаж болно.
Энэ нь сервергүй аргыг ашигладаг тул бусад нэрийг идэвхжүүлдэг. Тайзны үйлдвэрлэл, хөгжүүлэгч гэх мэт маш хурдан бодож болох хэд хэдэн төрөл байдаг.
Тиймээс үйлдвэрлэлийн кодыг алдагдуулахгүйгээр функцуудыг туршихдаа хялбархан авч үзэх боломжтой. Төгсгөлийн цэг нь тогтвортой байгаа тул ажлыг хурдан үргэлжлүүлж болно.
7. AWS lambda функцийн кодонд ямар хязгаарлалт тавигддаг вэ?
AWS Lambda-аас нийтлэг програмчлалын хэл болон үйлдлийн системийн үйл ажиллагаанд тийм ч их хязгаарлалт тавьдаггүй.
Идэвхгүй болгох зорилготой дуудлага, ирж буй сүлжээний холболт зэрэг үйл ажиллагаанд зарим хязгаарлалтууд байдаг.
Нэмж дурдахад, системийн дибаг хийх болон TCP порт нээхийг унтраа (спамаас хамгаалах 25-аас дээш урсгалыг хэмжих боломжтой). IP/TCP залгуурууд нь гадагшаа өгөгдлийн холболт хийхэд тустай.
8. EC2 нь AWS Lambda-аас юугаараа ялгаатай вэ?
Сервер болон инстанцуудыг удирдах шаардлагагүй бол сервергүй, үйл явдалд суурилсан AWS үйлчилгээ болох AWS Lambda ашиглан кодыг гүйцэтгэх боломжтой.
Харин Amazon EC2 нь а үүл тооцоолох хүчирхэг виртуал машины инстанцууд (VM instances) эсвэл үүлэн серверүүдийг бий болгох хүрээг санал болгодог үйлчилгээ.
Та Amazon EC2, AWS Lambda-тай ямар ч виртуал машины инстанцыг сонгох боломжтой ч функцуудыг дуудаж код үүсгэж, клоуд руу байршуулах боломжтой. EC2 инстансуудыг үүсгэхийн тулд та AWS lambda триггерийг үүсгэж болно.
9. Ямар нөхцөл байдал AWS Lambda функцийг өдөөж болох вэ?
Lambda консол, функцийн URL HTTP(S) төгсгөлийн цэг, Lambda API, AWS SDK, AWS Command Line Interface (AWS CLI) болон AWS хэрэгслүүд нь Lambda функцийг шууд дуудах арга зам юм.
Нэмж дурдахад, та Lambda-г урсгал эсвэл дарааллаас уншиж, функцээ дуудах эсвэл бусад AWS үйлчилгээг мөн адил хийхээр тохируулах боломжтой. Ламбда-д суурилсан програмууд гэж нэрлэгддэг сервергүй програмууд нь үйл явдлаар өдөөгдсөн функцуудаас бүрддэг.
Amazon S3 руу объект байршуулах, Amazon SNS мэдэгдэл эсвэл API үйл ажиллагаа зэрэг үйл явдлуудаас өдөөгдсөн нэг буюу хэд хэдэн функц нь сервергүй ердийн программыг бүрдүүлдэг.
10. Ламбда-г цаг хэмнэдэг ямар хүчин зүйл гэж та үзэж байна вэ?
Үүний хэд хэдэн шалтгаан байж болно. Үүний нэг нь Lambda нь серверийн дотоод санах ойд бүх зүйлийг хадгалдаг явдал юм.
Өөр нэг тайлбар нь өгөгдөл нь хурдад нөлөөлөхгүйгээр мэдээллийн санд шууд хадгалагддаг байж магадгүй юм. Эдгээр шинж чанаруудаас гадна Ламбда нь шууд туршилтын аргуудыг санал болгодог. Жишээлбэл, олон ханган нийлүүлэгчдийг ашиглан интеграцийн туршилтыг бэхжүүлж болно.
11. AWS Lambda-ийн хэд хэдэн сул талууд юу вэ?
Маш богино хугацаанд (100 ns-ээс 2 минутын хооронд) даалгавруудыг гүйцэтгэхийн тулд түр зуурын сав эсвэл хүйтэн эхлэх цагийг бий болгох шаардлагатай байдаг нь мэдэгдэхүйц сул тал юм. Энэ нь ижил процедурыг давтан гүйцэтгэхэд нэмэлт цаг нэмдэг.
Хязгаарлагдмал хадгалах зай, 128 МБ-аас 10 МБ хүртэлх хэмжээтэй RAM, 50 МБ-ын ердийн байршуулалтын багцын хэмжээ нь тооцооллын хязгаарлалтын жишээ юм (зөвхөн 512 МБ).
Гуравдагч талын програмуудыг үүсгэх явцад орчны хяналт байхгүй, учир нь AWS нь удирдах гол эрх мэдэл юм.
12. Сул зогсолтыг тэглэх талаар та ямар бодолтой байна вэ?
Ихэнх тохиолдолд байршуулалтыг онцлог шинж чанарууд гэж үздэг. Хэрэв тэдгээр нь төвөгтэй байвал AWS Lambda нь тэдгээрийг нэгж болгон хуваадаг.
Аппликешн нь энэ хугацаанд үнэхээр офлайн хэвээр байгаа нь энэ нөхцөл байдлын бодит үнэн юм. Гэсэн хэдий ч үр дагавар нь үргэлж үнэн байдаг.
13. AMI-г тайлбарла.
Lambda холболт дээр суурилсан боловсруулалт нь AMI эсвэл Amazon Machine Image-г ашиглаж болно. Үндсэндээ энэ нь үйлдлийн систем, бусад программууд болон хэрэглээний серверүүдийг хадгалахад ашигладаг загвар юм.
Үүлэн тооцооллын платформ дээр ч гэсэн AMI нь виртуал сервер ажиллуулах чадвартай.
14. Тохиолдол ба AMI хоорондоо холбоотой гэдэгт та итгэдэг үү?
Тэд бие биетэйгээ холбоотой байдаг. Тодорхойлогдсон шинж чанарууд болон үйлдлийн систем бүхий виртуал компьютерийг жишээ болгон үүсгэж болно.
Инстанцийн бүрэн нөөцлөлт нь AMI буюу Amazon Machine Image юм.
15. Ламбдагийн аюулгүй байдлын шилдэг туршлагууд юу вэ?
Ламбда дахь хамгийн алдартай аюулгүй байдлын аргуудын нэг бол AWS IAM (Identity Access and Management) ашиглах явдал юм. Аюулгүй байдлыг нэмэгдүүлэх өөр нэг ашигтай стратеги бол тодорхой хэрэглэгчдэд тодорхой үүрэг хариуцлага хүлээх боломжийг олгох явдал юм.
Энэхүү аюулгүй байдлын техникийн дагуу итгэгдээгүй эсвэл зөвшөөрөгдөөгүй хостуудад хандах хандалтыг хязгаарлаж болно.
Нэмж дурдахад аюулгүй байдлын журам нь хэр хүчтэй, үр дүнтэй байхаас үл хамааран байнга шинэчлэгдэж байх ёстой.
16. Ламбда уян блокны хадгалалт гэж юу вэ?
Үндсэндээ энэ нь даалгавруудыг эхлүүлэх боломжтой ойролцоох дижитал хадгалах сүлжээ юм. Үйлчлүүлэгчид RAID-д байгаа диск гэмтсэн тохиолдолд өгөгдөл алдагдах талаар санаа зовох шаардлагагүй болсон, учир нь энэ нь ямар ч асуудалгүйгээр алдааг тэсвэрлэх чадвартай.
Мэдрэмжтэй блок хадгалах нь нөөцийг бүрдүүлэх, хадгалах боломжийг олгодог. Шаардлагатай бол үүнийг API-тай холбож болно.
17. AMI бий болгох талаар та хэр ойлгодог вэ?
Найдвартай Amazon Machine Image-ээс жишээ авах нь хамгийн түрүүнд байх ёстой. Дараагийн алхам бол багц болон бүрэлдэхүүн хэсгүүдийг хоёуланг нь нэмэх явдал юм.
Эхний үед аюулгүй байдлын үүднээс эмзэг мэдээлэлтэй бол өгөгдөл нэмэх шаардлагагүй. Мэдээллийн санд бүртгүүлэхээс өмнө хандалтын итгэмжлэлүүдийг нэмэх шаардлагатай.
Таны хэрэгцээ, тодорхой шаардлагаас хамааран та түүнд байх шаардлагатай нийт өгөгдлийн хэмжээг ямар ч хэмжээгээр хялбархан нэмэгдүүлэх боломжтой.
18. Ламбда илэрхийллийн талаар та ямар ойлголттой байдаг вэ?
Тэдгээрийг товчилсон код боловсруулах явцад ихэвчлэн боддог. Ийм учраас тэдгээрийг үндсэндээ нэргүй арга болгон ашиглаж болно. Их хүчин чармайлт гаргахгүйгээр барилгачдын үр ашгийг дээшлүүлж, найдвартай кодыг итгэлтэйгээр бичиж болно.
Үндсэндээ тэдгээр нь үл мэдэгдэх чадвар юм.
19. AWS lambda дахь SQS болон түүний гүйцэтгэх үүрэг хариуцлагыг тайлбарла.
AWS Lambda дахь SQS нь янз бүрийн дотоод хостууд болон сүлжээний холболтуудаар мэдээлэл дамжуулах, солилцох аргаас өөр зүйл биш юм.
Та SQS-ээр дамжуулан янз бүрийн Lambda бүрэлдэхүүн хэсгүүдэд хандах боломжтой бөгөөд энэ нь мөн программууд хоорондын харилцаа холбоог хангадаг. Төрөл бүрийн ажиллагаатай хэсгүүдийг ашиглаж байсан ч тэдгээр нь хоорондоо холбоотой хэвээр байна.
Нэмж дурдахад, бүтэлгүйтлийн стратеги арилж, бүрэлдэхүүн хэсгүүд нь зөв харилцах боломжтой болно.
20. Lambda-ийн тусламжтайгаар босоо масштабыг хийх боломжтой юу?
Тийм ээ, энэ нь хэрэгжих боломжтой бөгөөд үнэн хэрэгтээ энэ нь AWS Lambda-ийн хамгийн том шинж чанаруудын нэг юм. Үндсэндээ илүү том жишээг эргүүлэх шаардлагатай үед үүнийг анхаарч үздэг. Хэрэв та аль хэдийн ашиглаж байгаа бол үүнийг түр зогсоож болно.
Та мөн серверээс салгах ёстой бөгөөд мөн адил. Та процедурыг үргэлжлүүлэхийн өмнө шинэ төхөөрөмжийн ID-г бичих ёстой.
21. Сервергүй програмыг эхлүүлэх: би юу хийх ёстой вэ?
Та сервергүй програмуудыг хөгжүүлж эхлэхийн тулд AWS Lambda-г консолж, зураг төслийг татаж авах ёстой.
AWS Sam файл (мөн программд AWS нөөц гэж нэрлэдэг) болон ZIP файлыг татаж авах анхны файлд (ихэвчлэн функцийн кодыг агуулсан) оруулах ёстой.
Сервергүй хэрэглээний программуудыг AWS Cloud үүсгэх командуудыг ашиглан багцалж, байрлуулж, баримтжуулж болно.
22. Сервергүй програмын алдааг хэрхэн арилгах вэ?
Ламбда функциональ үүрэгтүүдийг ажиллуулах рентген зөвшөөрлийг олгож, функцийн "код мөрдөх горим"-ыг идэвхтэй болгож сольсноор AWS lambda функцийг дараа нь AWS рентген ашиглан хянах боломжтой болгож болно.
Хэрэглэгч lambda функциональ бүрэлдэхүүн хэсгүүдэд зориулсан X-RAY-г идэвхжүүлэх үед хэрэглэгч ашигласан ламбда үйлчилгээ, функциональ нэгжийн хугацаа, функциональ гүйцэтгэлийн цаг зэрэгтэй хамт мөрдөх мэдээллийг рентген зурагт нийтэлдэг.
X-ray SDK-г одоогоор Java болон Node.js програмууд.
23. Ламбда функц нь нэргүй ангиас юугаараа ялгаатай вэ?
Түлхүүр үгсийн хэрэглээ нь Lambda функц болон нэргүй анги хоёрын хооронд ихээхэн ялгаатай. Нэргүй ангиудын түлхүүр үгсийг нэргүй функциональ ангиудыг шийдвэрлэхэд ашигладаг бол Lambda функцийн түлхүүр үгсийг функциональ ангиудыг шийдвэрлэхэд ашигладаг.
24. Нэгэн зэрэг ажиллуулж болох AWS Lambda функцүүдийн дээд тоо байгаа юу?
AWS lambda програм нь хэд хэдэн өөр функциональ кодын жишээн дээр ажиллахаар бүтээгдсэн тул хариулт нь үгүй. Нэмж дурдахад, AWS lambda-ийн бүртгэл бүр нь тодорхой тооны дараалсан гүйцэтгэлийн аюулгүй байдлын босготой байдаг.
Нэг AWS функцийн хувьд lambda залгамжлалын гүйцэтгэлийн хамгийн их тоог зохицуулах боломжтой бөгөөд үүнийг дараа нь чухал функцүүдэд хэрэглэгчийн дансны зэрэглэлийг нөөцлөх эсвэл үнэхээр хүртээмжтэй AWS нөөцийн урсгалын урсгалын хурдыг удаашруулахад ашиглаж болно.
25. Ламбда-г бүтээхдээ ямар практик хэрэглээний тохиолдлуудыг санаж байсан бэ?
AWS Lambda-г ашиглах зарим тохиолдлуудад вэб сайтын товшилт, зураг байршуулах, мэдрэгчийг хянах, хариу үйлдэл үзүүлэх, IoT төхөөрөмжөөс уншихад хариу үйлдэл үзүүлэх зэрэг багтана. Гэхдээ хандалт нь зөвхөн үүгээр хязгаарлагдахгүй.
Ламбда нь хэд хэдэн нэмэлт ажлыг гүйцэтгэхэд ашиглагдаж болно. Lambda-ийн тусламжтайгаар арын үйлчилгээг автоматаар хангах боломжтой.
26. AWS Lambda-тай ямар төрлийн программуудыг гүйцэтгэж болох вэ?
AWS Lambda-г Amazon DynamoDB ашиглан бүтээгдсэн гар утасны арын хэсэгт өгөгдөл татаж авах, хувиргах зэрэг олон төрлийн ажилд ашиглаж болно.
Зүйлүүдийг Amazon S3-д байршуулах үед зохицуулагчид хэмжээг нь өөрчилж, шахдаг. Үүний тулд өгөгдөл дамжуулахад зориулагдсан сервергүй боловсруулдаг Amazon Kinesis платформыг ашигладаг.
Амазоны ямар ч вэб үйлчилгээг тайлагнах, API аудит хийхэд ашиглаж болох ба AWS Lambda-ийн тусламжтайгаар өөр олон ажлыг гүйцэтгэх боломжтой.
27. Lambda дахь AVX2 векторжуулалт нь юу гэсэн үг вэ?
Intel x86 зааврын багцын Advanced Vector Extensions 2 (AVX2) векторжуулалтын өргөтгөл нь 256 битийн векторууд дээр нэг заавар болон олон өгөгдөл (SIMD) зааварчилгааг гүйцэтгэх боломжийг олгодог. AVX2 нь өндөр зэрэгцүүлэн гүйцэтгэх боломжтой векторчлох боломжтой алгоритмуудын CPU-ийн гүйцэтгэлийг сайжруулж, хоцролтыг богиносгож, илүү сайн дамжуулах чадварыг бий болгодог.
Дүгнэлт
Баяртай! Одоо та AWS Lambda ярилцлагын асуулт, хариултыг энгийнээс эхлээд төвөгтэй хүртэл авах боломжтой. AWS Lambda нь ойлгоход хэцүү байдаг тул ярилцлагын үеэр асуултанд хариулахдаа болгоомжтой байх хэрэгтэй.
Дээр дурдсан асуултуудын тусламжтайгаар ярилцлагад ороход танд ямар ч асуудал гарахгүй. Ярилцлагад хэрхэн бэлдэх талаар мэдээлэл авахыг хүсвэл Hashdork-с зочилно уу Ярилцлагын цуврал Хэсэг.
хариу үлдээх