Используйте облачные функции Google для ускорения работы приложения GAE - PullRequest
0 голосов
/ 31 декабря 2018

У меня есть стандартное приложение Python GAE, которое выполняет довольно вычислительную обработку.Мне нужно завершить обработку в течение 60 секунд, и в идеале я хотел бы сделать это быстрее для лучшего взаимодействия с пользователем.

Разделение работы на несколько потоков не кажется хорошимрешение, потому что потоки, вероятно, будут работать на одном и том же процессоре и, следовательно, не дадут ускорения.

Мне было интересно, можно ли использовать облачные функции Google (GCF) аналогично потокам.Например, если я создаю GCF для обработки, делю свою работу на 10 частей и выполняю 10 вызовов GCF параллельно, могу ли я ожидать получения результатов в 10 раз быстрее?(кроме времени ожидания и затрат на запуск GCF)

Ответы [ 2 ]

0 голосов
/ 31 декабря 2018

Если вам удастся разделить рабочую нагрузку на более мелкие порции, которые вы будете запускать параллельно с помощью отдельных (внешних) запросов, я подозреваю, что вы получите более высокую производительность (и стоимость), используя сам GAE (возможно,в отдельном сервисе) вместо CF:

  • Стандартная среда GAE экземпляры могут иметь более высокие скорости ЦП - экземпляр B8 имеет 4,8 ГГц, максимальная скорость ЦП CF равен 2,4 ГГц
  • вы лучше контролируете конфигурацию масштабирования GAE и штрафы за время запуска
  • Я подозреваю, что сетевые задержки будут, по крайней мере, такими же, если не лучше в GAE - не переходить к другомуПродукт ниже (не уверен)
  • Расходы GAE, вероятно, будут меньше, поскольку вы платите за часы экземпляра (независимо от того, сколько запросов обрабатывает экземпляр), а не за запрос / вызовы
0 голосов
/ 31 декабря 2018

Каждый вызов функции выполняется в своем собственном экземпляре сервера, и функция будет масштабироваться до 1000 экземпляров для параллельной обработки параллельных запросов.Так что да, вы можете сделать это, если вы готовы оплачивать стоимость холодного запуска каждого экземпляра сервера, поскольку он выделяется для первого запроса.

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