? "name": "book-app",
? "version": "1.0.0",
? "description": "Serverless book management API",
? "dependencies": {
??? "@hapi/joi": "^15.0.3",
??? "aws-sdk": "^2.466.0",
??? "uuid": "^3.3.2"
? }
}

最后,在項目的根目錄下運行如下命令安裝項目依賴——“npm install”。從中可以看到,Serverless 框架簡化了在代碼中定義基礎設施的過程,開發者可以在“serverless.yml”中配置應用程序基礎參數。確定參數信息后,在項目根目錄下創建一個新目錄“books”。并在 books 目錄下創建一個文件“schema.js”,就可以定義圖書模式及其屬性。

后無服務器時代,可以使用AWS Fargate為OpenCV項目創建無服務器API

進行傳統API開發時,開發者要通過函數才能進行篩選、路由、批處理、拆分事件或調用其他云服務或函數,但現在這些操作等都能通過更少的函數代碼,多數情況下甚至不需要函數代碼就能完成;它們可以被可配置的云構造,以云服務一部分的形式取而代之。

云計算市場正在向超專業化的垂直多云服務轉變,提供獨特且高細粒度的功能,專業滿足開發人員的需求。AWS的出現,將無需管理基礎設施,即可根據事件執行代碼的概念引入主流視線,開發者可以通過AWS,輕松實現函數代碼到云構造的過渡。

以在帶有AWS Fargate的無服務器容器中部署在OpenCV和Flask中創建的簡單圖像識別模型為例,開發者需要在CDK項目中部署的網絡資源,打開網址https://medium.com/@JugueDev/despliega-laravel-usando-containers-serverless-con-aws-fargate-%EF%B8%8F-%EF%B8%8F-f4fdcb6c170f,并在Flask中創建一個超級基礎的應用程序,創建一個hello_app.py文件,其中包含以下內容:

from?flask?import?Flask

app?=?Flask(__name__)

@app.route('/')
def?hello_world():
?return?'Hello?World!'

if?__name__?==?"__main__":
?app.run()。

接著,開發者需要在新創建的文件中定義requirements.txt項目的依賴關系:

Flask==2.0.2,并用Docker容器應用程序創建一個DockerFile。最后,把OpenCV應用程序連接到Flask項目,在requirement.txt文件中添加幾個依賴項

click==8.0.3
Flask==2.0.2
itsdangerous==2.0.1
Jinja2==3.0.2
MarkupSafe==2.0.1
Werkzeug==2.0.2
numpy
keras
cmake==3.20.5
scikit-build==0.13.1
setuptools==50.3.2
wheel==0.30.0
tensorflow
opencv-python==4.4.0.46

圖像構建成功后,開發者就可以繼續將其上傳到存儲庫中。并在AWS Fargate中部署圖像到AWS Fargate的無服務器。

現行無服務器API的實操,以API Gateway為例

API Gateway是一個完全托管的服務,它使得開發者可以輕松創建、發布、維護、監控和保護任何規模的API。與Lambda結合使用時,API Gateway可以作為Lambda函數的前端觸發器,接收HTTP請求并將其轉發給Lambda函數處理,然后返回響應。

假設開發者要創建一個簡單的API Gateway,需要遵循以下步驟:

  1. 在API Gateway控制臺中,選擇“創建API”。
  2. 選擇“REST API”。
  3. 輸入API名稱,例如“HelloWorldAPI”。
  4. 在資源下創建一個新的資源,例如“/hello”。
  5. 為“/hello”資源創建一個GET方法。
  6. 將GET方法的集成類型設置為“Lambda函數”。
  7. 選擇之前創建的Lambda函數。
  8. 部署API到一個新的階段,例如“prod”。

這樣,就可以創建一個公開的HTTP端點,當開發者訪問這個端點時,API Gateway會觸發Lambda函數,并將函數的響應返回給客戶端。

此外,開發者還可以將Lambda和API Gateway結合起來,創建一個無服務器的HTTP API。用戶的HTTP請求通過API Gateway路由到Lambda函數,函數處理請求后返回響應,整個過程無需服務器。

參考網站:

https://dreamit.blog.csdn.net/article/details/131746520

https://mp.weixin.qq.com/s/9T5HOXiDgOwgHuk9k1dVWg

https://mp.weixin.qq.com/s/8pnE8uK25jbvn433YdNs2w

https://mp.weixin.qq.com/s/IF_kVSUcujAAONwFoIPhvA

https://mp.weixin.qq.com/s/RadtEe09MYxZiK7DjuHbeg

https://mp.weixin.qq.com/s/qJh3Xexo3tzMQDYht5V5qQ

https://mp.weixin.qq.com/s/0RvSmFIR_Ao1auZ6w79D1g

上一篇:

HTTP API vs WebSocket API:選擇哪個來實現實時通信?

下一篇:

2024 年頂級 Python REST API 框架
#你可能也喜歡這些API文章!

我們有何不同?

API服務商零注冊

多API并行試用

數據驅動選型,提升決策效率

查看全部API→
??

熱門場景實測,選對API

#AI文本生成大模型API

對比大模型API的內容創意新穎性、情感共鳴力、商業轉化潛力

25個渠道
一鍵對比試用API 限時免費

#AI深度推理大模型API

對比大模型API的邏輯推理準確性、分析深度、可視化建議合理性

10個渠道
一鍵對比試用API 限時免費