iT邦幫忙

2024 iThome 鐵人賽

DAY 16
0

如果只是想要執行一個簡單的程式碼,那麼 AWS Lambda / Google Cloud Functions / Azure Functions 就是你該認識的服務。

說明

  • AWS Lambda 是無伺服器服務(Serverless),意味著你不需要去建構複雜的基礎設施。
  • 只要看到 「without provisioning」 十之八九都是在指無伺服器服務

幾個需要牢記的重點

  • 每個帳號,每月可以免費使用一定的量
    • 總執行次數 100萬次 以內,免費。
    • 總運行時間 320萬秒 以內,免費。
  • 硬限制
    • 每個 Lambda Function 的預設運行時間上限,是3 秒結束,程式寫稍微長一點,或者有存取外部資源的話,就很容易跳錯誤,記得要來調長一點,然後可以設定的最低的 Timeout 就是 3 秒,只能往上加整數秒。
    • 每個 Lambda Function 的最高運行時間上限,需在 900 秒 (15 分鐘) 內結束,超過的話會直接 Timeout。
  • 層 (Layer):
    • 客製化的環境,通常是將相依套件打包到 Layer 中,上傳匯入到 AWS Lambda 上執行。
    • 最多疊五層。
    • 可以使用別人(Other AWS account)打包好的 Layer,但是必須為在相同 Region。
  • 網路的部分:
    • 大部分 Serverless 的服務,都是運作在共享的池子裡面。 因此不是在自己的私有雲 (not your own VPC)
    • 不過,AWS 上可以允許你「不走網際網路、公開網路,去存取你 VPC 中的資源」 / 使用 Lambda Function 去存取 VPC 中的資源。 需要建立 VPC Endpoint interface 型。 可以參考:https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html#vpce-interface-limitations
  • 執行權限:

結論

  • 佛心服務,不用白不用。
  • 免費、簡單就應該盡量用。
  • 後續應該會有機會在實作中用到上述的技巧。

上一篇
【Day 15】 做題庫小試身手 - 2
下一篇
【Day 17】 AWS 上的容器服務
系列文
老闆,外帶一份 AWS Certified Data Engineer30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言