8

我正在尝试将 asyncpg 与 AWS Lambda 一起使用,并在尝试import asyncpg

Unable to import module 'handler': No module named asyncpg.protocol.protocol'

我在这个答案中导入 python 依赖项,无论有无虚拟环境。

更新。发现这个repo 使用自定义编译psycopg2的东西,它适用于 AWS Lambda,但asyncpg没有找到这样的替代方案或关于编译 Lambda 友好asyncpg包的说明。

4

2 回答 2

4

这个库有 c 绑定,而 lambda 不能很好地处理这些。处理它的主要方法是上传特定库及其为 Linux 环境预编译的绑定。主要方法是按照此处的说明进行操作,并确保它已经在您的 linux(或我猜是 mac)中编译的库。这很容易发生,只需创建一个 venv 并按照上述指南的建议包含它。您可以在此处找到类似的问题。一般来说,这是一种常见的情况,像chalice这样的框架会尝试找到一些解决方法。

于 2017-06-02T14:46:28.360 回答
0

在该函数下编写您的代码,def lambdahandler()并在此函数下导入所有库和函数。

于 2019-03-13T11:11:27.193 回答