Пользовательское программное обеспечение в AWS Lamda Environment - PullRequest
0 голосов
/ 15 мая 2018

Я хочу запустить оболочку Python в AWS Lambda.Оболочка Python должна вызывать внешнюю программу через командную строку.Я использую пакет подпроцесса Python для вызова внешней программы.Программа называется embulk - Java-приложение, используемое для массовой передачи.(http://www.embulk.org/docs/)

На моем локальном Mac у меня установлено embulk, и оболочка Python успешно вызывает embulk для перемещения данных Amazon S3 в наше облачное хранилище данных (на TreasureData). Для этой оболочки Pythonработать на Lambda, мне как-то нужно установить embulk в AWS Lambda Environment. Возможно ли это сделать? Или мне нужно купить экземпляр EC2, чтобы это работало?

1 Ответ

0 голосов
/ 09 апреля 2019

Чтобы запустить Java в среде Python Lambda, вам потребуется упаковать весь JDK с вашим лямбда-кодом. Вам нужно убедиться, что он точно соответствует дистрибутиву AWS x86 Linux, который они используют.

Лучший подход - полностью реализовать ваш код на Java. Создайте свой собственный класс Java Lambda, который вызывает существующий основной класс Embulk.

Если вы не знакомы с Java, вы можете написать небольшое количество Java для реализации Lambda Handler, который затем вызывает скрипт Jython (Python-in-Java), который затем вызывает основной метод Embulk.

Как разработчик Python, вы должны найти Java относительно простым для понимания, если вы уже используете объектно-ориентированный Python.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...