簡體   English   中英

在 AWS Lambda 中使用 Python SQLAlchemy 是個好主意嗎?

[英]Is it a good idea to use Python SQLAlchemy in AWS Lambda?

亞馬遜建議不要在 lambda 函數中包含大型庫/依賴項。 據我所知,SQLAlchemy 是一個相當大的 python 庫。 您認為在 lambda 函數中使用它是一個好主意嗎? 一種選擇是將其包含為 Lambda 層,並在所有相關的 Lambda 函數中使用它。

無論如何,最好的做法是什么?

無服務器函數是小型自包含函數。 SQLAlchemy 是一個 ORM,它允許您操作數據庫對象,如 python 中的對象。 如果您只是編寫一些無服務器功能,那么您是數據庫上的平均 CRUD 操作,那么您最好編寫 SQL 通過組合字符串並通過數據庫驅動程序直接執行它(無論如何您都必須安裝它) ,即使您使用的是 sqlalchemy)。 如果您在 AWS Lambda 之上構建自己的框架,那么也許可以考慮 sqlalchemy。

  • 您認為在 lambda 函數中使用 SQLAlchemy 是個好主意嗎?

可以,但您可能需要先考慮AWS Dynamodb或其他選項。 如果 SQL 是您的要求,那么您可以 go 用於具有 SQL 兼容后端的RDS實例。 在這種情況下,這完全取決於您的具體需求。 這不是一般要求。

  • 無論如何,最佳做法是什么?

如果您只需要存儲一些數據並將數據存儲連接到 AWS Lambda,那么 DynamoDB 通常是一個不錯的選擇。 SQL can be preferred if you already have a relational database or if you need to perform certain SQL queries which are easier to do with SQL than a non-relational model.

根據我的閱讀,SQLAlchemy 在 memory 緩存它已讀取的數據並將其用於將來的調用。 Based on what you are doing, it would be good to check out the SQLAlchemy caching strategy so another Lambda does not change the data from under the first lambda with SQLAlchemy.

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM