Как запустить код Python на сервере AWS через приложение для Android - PullRequest
0 голосов
/ 22 февраля 2019

Я сейчас о Python и AWS, сейчас я занимаюсь одним из моих проектов, который требует от меня разработки приложения для Android с использованием KIVY, а некоторые функции выполняются с помощью Python.Тем не менее, он требует значительных вычислительных ресурсов, поэтому я сначала собираюсь получить доступ к облачной системе AWS, и все мои вычислительные работы будут выполнены на AWS, а после завершения вычислений он сообщит результат приложению для Android.Может кто-нибудь рассказать мне о том, как запустить мой код Python на сервере AWS, на самом деле, мой проект касается распознавания лиц, и если пользователь нажимает одну кнопку, он подключается к облачному серверу, а он нажимает другую кнопку,он загрузит тестовое изображение на облачный сервер, и все алгоритмы вычислений будут на AWS.

Ответы [ 2 ]

0 голосов
/ 22 февраля 2019

Хотя ответ @ SebatienStomarcq хороший и должен работать, я хотел бы добавить свои 2 цента и предложить вам вместо этого использовать S3 .

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

После того, как ваш файл попал в S3, вы можете захватывать его события (которые легко настраиваются, то есть вы можете прослушивать такие события, как PUT, COPY, DELETE и многие другие).подробнее) и беспрепятственно отправьте ему несколько других сервисов AWS, например, SNS и Lambda.

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

0 голосов
/ 22 февраля 2019

Я бы порекомендовал вам упаковать свой код Python в AWS Lambda функцию и предоставить его через REST API .

Платформа AWS SAM и командная строкапоможет вам легко настроить эту инфраструктуру.

https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-quick-start.html

Это позволит вам

  • подготовить ваш первоначальный проект (sam init)
  • локально протестируйте свой код (sam local)
  • упакуйте свое приложение для развертывания (sam package)
  • разверните приложение в облаке (sam deploy)

и даже при наличии доступа к журналам на стороне сервера (sam logs)

Обратите внимание на безопасность вашего REST API, чтобы не показывать его миру, а только вашим клиентам.См. " Управление доступом к вашему API " для получения более подробной информации

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