2016-02-18 2 views
0

Я использую AWS Lambda в качестве backend - однако я не могу понять, как взаимодействовать с моей базой данных SQL на Amazon RDS.AWS Вопросы лямбда

Я бы просто хотел написать функцию API в Lambda для доступа и получения информации из базы данных.

Для этого в python я бы обычно использовал модуль 'MySQLdb' - однако Lambda этого не имеет.

Любые предложения?

ответ

1

Если вы хотите использовать внешние библиотеки, вам необходимо создать пакет развертывания, содержащий их, и загрузить его через консоль AWS или S3.

Более подробная информация здесь: http://docs.aws.amazon.com/lambda/latest/dg/lambda-python-how-to-create-deployment-package.html

+0

После нескольких попыток сделать это мне не повезло. Можно ли просто загрузить модуль, а затем использовать, чем в редакторе консоли в лямбда>? – user3024827

+0

Попробуйте следующее обходное решение: Откройте .py файл для своего модуля и скопируйте код всех необходимых функций непосредственно в тело вашей лямбда-функции. Но это может быть chalanging, если у него много зависимостей. –

+0

Мне нужно установить jwplatform модуль в AWS Lambda, используя Python, но пока не получивший успеха. Я локально устанавливаю jwplatform и создаю пакет развертывания и загружаю zip в AWS Lambda, но он дает errorMessage: «Невозможно импортировать модуль lambda_function». Любой, пожалуйста, помогите мне –

0

У вас есть 2 варианта.

Вариант 1

Как Владимир упоминалось, вы должны упаковать MySQLdb модуль вместе с вашим кодом Lambda и импортировать MySQLdb в коде лямбда.

Вариант 2

Используйте Boto3 RDS модуль, который входит в лямбда/Python. Не нужно ничего накапливать. Просто импортируйте boto3. Один из недостатков заключается в том, что вы переписали свой код с помощью boto3 вместо MySQLdb

Смежные вопросы