1. Serverless
Serverless: μλ²λ¦¬μ€ μ»΄ν¨ν μ μ€μ¬μ λΆλ₯΄λ λ§- λ΄κ° κ΄λ¦¬ν μλ²κ° μλ€λ μλ―Έ
1.1 Serverless νΉμ§
- μλ² κ΄λ¦¬ λΆλ΄μμ (κ°λ°μλ μ½λ μμ±μλ§ μ§μ€)
- κ°λ°μλ μ½λ μμ±μλ§ μ§μ€νκ³ ,
- μΈνλΌ κ΄λ¦¬λ AWS Lambda, Azure Functions, Google Cloud Functions λ±μ μλ²λ¦¬μ€ νλ«νΌμ λ§‘κΉ
- μλ²λ¦¬μ€ ν¨μλ μ£Όλ‘ μ΄λ²€νΈ κΈ°λ°μΌλ‘ μ€νλ¨ (e.g. HTP μμ², λ°μ΄ν°λ² μ΄μ€ λ³κ²½, νμΌ μ λ‘λ λ±)
- λΉμ© ν¨μ¨μ (νμν λλ§ μ€νλλ©°, μ€ν μκ°μ λ°λΌ λΉμ©μ΄ μ²κ΅¬λ¨)
- μκ°μ νμμ±
- μμ μ½λ λ¨μ
- λ€μν ν΄λΌμ°λ μλΉμ€μ ν΅ν©(λ°μ΄ν°λ² μ΄μ€, μ€ν 리μ§, λ©μμ§, AI λ±)
2. Lambda
AWS Lambdaλ μλ²λ¦¬μ€ μ»΄ν¨ν μλΉμ€λ‘ λ€μν μ±μ μ€ννκ³ κ΄λ¦¬νλ€.- Lambda ν¨μλ λ€μν μ΄λ²€νΈ μμ€μμ νΈλ¦¬κ±°λλ€.
- e.g. HTTP μμ², λ°μ΄ν°λ² μ΄μ€ λ³κ²½, λ©μμ§ ν λ©μμ§ λ±μ μ΄λ²€νΈμ λ°μνμ¬ μ€νλ¨
- Node.js, Python, Java, Go, Ruby, .NET λ±μ λ€μν νλ‘κ·Έλλ° μΈμ΄λ₯Ό μ§μ
- μ½λμ μ¬λ¬ λ²μ μ κ΄λ¦¬νκ³ , νΉμ λ²μ μ λ°°ν¬νκ±°λ λ‘€λ°±ν μ μλ κΈ°λ₯λ μ 곡
- μλμΌλ‘ μ€μΌμΌλ§ λλ―λ‘ νΈλν½ μ¦κ°μ λ°λΌ ν¨μ μΈμ€ν΄μ€κ° μμ±λκ³ κ΄λ¦¬λλ€
- μ΄λ‘μ¨ μ ν리μΌμ΄μ μ νμ₯μ±μ΄ ν₯μλ¨
- μ΄λΉ μ€ν μκ°μ κΈ°λ°μΌλ‘ λΉμ©μ΄ μ²κ΅¬λλ―λ‘, λΉμ©μΈ‘λ©΄μμλ κ΅μ₯ν ν¨μ¨μ
- ν AWS μλΉμ€μ μ½κ² ν΅ν©ν μ μλ€.
- e.g. S3, DynamoDB, SNS, API Gateway, CloudWatch λ±
- e.g. CloudWatchμ ν΅ν©νκ² λλ©΄ Lambda ν¨μμ μ€νμ λͺ¨λν°λ§νκ³ λ‘κΉ ν μ μμ
- μ΄λ₯Ό ν΅ν΄ λλ²κΉ λ° μ±λ₯ μ΅μ νκ° κ°λ₯
- μ€ν μν μ ν΅ν΄ μ‘μΈμ€ κΆνμ κ΄λ¦¬νκ³ , μ΄λ₯Ό ν΅ν΄ ν¨μκ° λ€λ₯Έ AWS 리μμ€μ μμ νκ² μνΈ μμ©ν¨
- κ·Έλμ 보μ μΈ‘λ©΄μμλ κ°μ μ κ°κ³ μλ€
- cf. AWSμμ λ§λ Lambda 곡μ μκ° λμμ
3. (μ€μ΅) Lambda ν¨μ μμ± λ° μ€ν
[Lambda] β [ν¨μ μμ±] λ²νΌμ ν΄λ¦νλ€.
- κ°λ¨νκ² ν
μ€νΈλ₯Ό νκΈ°μ, [λΈλ£¨νλ¦°νΈ μ¬μ©] μ΅μ
μ μ ν.
ν¨μ μ΄λ¦: myFunction- νλ©΄μ μλλ‘ λ΄λ €λ³΄λ©΄, ν¨μ μ½λκ° μμ±λμ΄ μλ€.
- cf. μ΄λ²€νΈλ₯Ό λ°μμ ν€λ₯Ό μΆλ ₯νκ³ , 첫 λ²μ§Έ ν€λ₯Ό 리ν΄νλ κ°λ¨ν ν¨μ
- μ€λ₯Έμͺ½ μλμ μλ [ν¨μ μμ±] λ²νΌμ ν΄λ¦ν΄μ ν¨μλ₯Ό μμ±νλ€.
- ν¨μ μμ±μ μ½ 1-2λΆ μ λ μμλλ€.
ν¨μκ° μμ±λλ©΄, νλ©΄μ μλλ‘ λ΄λ €λ³΄λ©΄ μμ€μ½λκ° μλ€.
- [ν μ€νΈ λ²νΌ]μ ν΄λ¦
- κ·Έλ¬λ©΄ μ§κΈμ μλ¬΄λ° ν
μ€νΈ μ΄λ²€νΈκ° μκΈ° λλ¬Έμ,
- λ¨Όμ ν μ€νΈ μ΄λ²€νΈλ₯Ό ꡬμ±νλ λ€μ΄μΌλ‘κ·Έκ° λμ¨λ€.
μ΄λ²€νΈ μ΄λ¦: MyEvent- cf. λ°μμλ μ΄λ²€νΈλ‘ μ λ¬λ JSON κ°μ²΄λ₯Ό νΈμ§ν μ μλ€.
- [μ μ₯] λ²νΌμ ν΄λ¦.
- ν μ€νΈ μ΄λ²€νΈλ₯Ό μ μ₯ν μ΄νμ λ€μ [ν μ€νΈ λ²νΌ]μ ν΄λ¦νλ€.
- κ·Έλ¬λ©΄ λλ€ν¨μκ° μ€νλκ³ , λ‘κ·Έμ μλ΅μ΄ μΆλ ₯λλ κ²μ λ³Ό μ μλ€.
4. (μ€μ΅) Lambda ν¨μ μμ
[Lambda ν¨μ] νμ΄μ§μμ μ€λ₯Έμͺ½ μλ¨μ [μμ ] λ©λ΄λ₯Ό ν΄λ¦νλ€.
- κ·Έλ¦¬κ³ νμ λ©λ΄μμ [ν¨μ μμ ]λ₯Ό ν΄λ¦νλ€.
- κ·Έλ¬λ©΄ νμΈ λ€μ΄μΌλ‘κ·Έκ° λμ€κ³ , [μμ ] λ²νΌμ ν΄λ¦νλ€.
- Lambda ν¨μ μμ κ° μλ£λλ€.