我尝试在AWS Lambda中使用asyncpg,但在尝试import asyncpg时遇到下一个错误
import asyncpg
Unable to import module 'handler': No module named asyncpg.protocol.protocol'
我导入了python依赖项,就像在this answer中使用和不使用虚拟环境一样。
upd。使用自定义编译的psycopg2找到了this repo,它与AWS Lambda一起工作得很好,但对于asyncpg,没有找到编译Lambda友好的asyncpg包的替代方案或说明。
psycopg2
asyncpg
发布于 2017-06-02 22:46:28
这个库有c绑定,而lambda不能很好地处理这些绑定。处理它的主要方法是上传特定的库,其中包含为Linux环境预编译的绑定。主要的方法是遵循here的说明,并确保它已经在你的linux (我猜是mac )上编译好的库。这很容易发生,只需创建一个venv并将其包含在上面的指南中。您可以找到类似的问题here。一般来说,这是一种常见的解决方案,像chalice这样的框架试图找到一些变通方法。
发布于 2019-03-13 19:11:27
在def lambdahandler()下编写代码,并导入此函数下的所有库和函数。
def lambdahandler()
https://stackoverflow.com/questions/44331525
相似问题