該教程通過使用AWS服務來指導您通過構建無服務器圖像處理管道。我們將創建一個部署在ECS Fargate群集上的next.js前端,與API網關,Lambda函數,S3桶和DynamoDB進行交互。
該項目增強了您對無服務器體系結構和AWS服務集成的理解。記住:這是一個演示;生產需要增強的安全性和配置。
先決條件:
- 具有具有必要權限的IAM用戶的AWS帳戶。
- 熟悉AWS服務(S3,API Gateway,Lambda,DynamoDB,ECS,ECR)。
- 安裝了node.js。 GitHub存儲庫提供代碼示例。
AWS服務設置:
-
創建S3存儲桶:需要兩個S3存儲桶:
sample-image-uploads-bucket
(通用)和sample-thumbnails-bucket
(最初在公共讀取訪問中禁用)。
-
配置
sample-thumbnails-bucket
permissions:使用以下策略授予公共閱讀對此存儲桶的訪問:
{ “版本”:“ 2012-10-17”, “陳述”: [ { “ sid”:“ publicRead”, “效果”:“允許”, “主要的”: ”*”, “動作”:“ s3:getObject”, “資源”:“ ARN:AWS:S3 :::樣本 - thumbnails-bucket/*” } 這是給出的 }
-
創建DynamoDB表:使用字符串主鍵
image_id
創建一個名為image_metadata
的dynamodb表。
-
創建IAM角色:為Lambda功能創建IAM角色(
Lambda-Image-Processor-Role
),授予AmazonS3FullAccess
,AmazonDynamoDBFullAccess
和CloudWatchLogsFullAccess
權限。
lambda功能:
-
image-processor
函數:此函數處理上傳的圖像,創建縮略圖,並將元數據存儲在DynamoDB中。它使用枕頭庫,需要一個lambda層(ARN:AWS:LAMBDA:US-EAST-1:770693421928:layer:klayers-p39-Pillow:1-記住調整該區域)。該功能由S3 PUT事件觸發。
-
get-image-metadata
函數:此功能從dynamodb中檢索圖像元數據的前端。
API網關:
創建與get-image-metadata
lambda功能集成的HTTP API網關( image-gallery-api
)。前端將使用get /images
端點。
測試:將圖像上傳到sample-image-uploads-bucket
。 Lambda功能應處理它,API網關應返回元數據。
前端(Next.js):
創建next.js應用程序,從API網關獲取圖像數據,然後顯示縮略圖。請記住使用正確的圖像域更新next.config.mjs
。
Docker和ECS部署:
- 創建一個dockerfile: containerize the next.js應用程序。
- 推向ECR:將Docker圖像推向Amazon ECR。
- 創建ECS群集和任務定義:創建ECS Fargate群集和使用ECR映像的任務定義。確保任務角色具有必要的ECR權限。為ECS任務執行創建IAM角色。
創建ECS服務:創建ECS服務以運行容器。
訪問應用程序:通過ECS任務的公共IP訪問您已部署的Next.js應用程序。
結論:該全面的教程展示了在AWS上構建功能齊全的無服務器圖像處理管道。請記住,為生產部署實施強大的安全性和錯誤處理。考慮使用CloudFront改進S3訪問控制並優化DynamoDB查詢以進行可伸縮。
以上是使用AWS ECS和LAMBDA的無服務器圖像處理管道的詳細內容。更多資訊請關注PHP中文網其他相關文章!

與這些頂級開發人員新聞通訊有關最新技術趨勢的了解! 這個精選的清單為每個人提供了一些東西,從AI愛好者到經驗豐富的後端和前端開發人員。 選擇您的收藏夾並節省時間搜索REL

該教程通過使用AWS服務來指導您通過構建無服務器圖像處理管道。 我們將創建一個部署在ECS Fargate群集上的next.js前端,與API網關,Lambda函數,S3桶和DynamoDB進行交互。 Th

該試點程序是CNCF(雲本機計算基礎),安培計算,Equinix金屬和驅動的合作,簡化了CNCF GitHub項目的ARM64 CI/CD。 該計劃解決了安全問題和績效

此基於GO的網絡漏洞掃描儀有效地確定了潛在的安全弱點。 它利用了GO的並發功能的速度功能,包括服務檢測和漏洞匹配。讓我們探索它的能力和道德


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境