Использование облачных функций против облака запускается как webhook для диалога - PullRequest
0 голосов
/ 30 апреля 2020

Я мало что знаю о веб-разработке и облачных вычислениях. Из того, что я прочитал при использовании облачных функций в качестве службы webhook для диалогового потока, вы ограничены написанием кода всего в 1 исходном файле. Я хотел бы создать действительно сложный агент диалогового потока, поэтому было бы удобно иметь организованную структуру кода, чтобы упростить разработку. Недавно я обнаружил, что Cloud Run работает так, будто он также может обрабатывать запросы webhook и позволяет разрабатывать сложную структуру кода.

Я не хочу использовать Cloud Run только потому, что писать все неудобно в одном файле, но с другой стороны было бы странно иметь облачную функцию с одним файлом с тысячами строк кода.

Возможно ли иметь несколько файлов в одной облачной функции? Подходит ли облако для моей проблемы? (создать сложный агент диалогового потока)

1 Ответ

1 голос
/ 01 мая 2020

Возможно ли иметь несколько файлов в одной облачной функции?

Да. При развертывании в облачных функциях Google создается пакет со всеми исходными файлами или он извлекается из исходного хранилища.

Но Dialogflow допускает только index.js и package.json во встроенном редакторе

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

Подходит ли Cloud Run?

Конечно. Самое большое, что даст вам Cloud Run, - это полный контроль над средой выполнения, так как вы дополнительно указываете детали этой среды.

Однако самым большим недостатком является то, что вам также необходимо определить детали этой среды. Cloud Funcitons предоставляют HTTPS-сервер без необходимости беспокоиться об этих деталях, при условии, что остальная среда подходит.

Какие еще варианты у меня есть?

Где угодно! Диалоговое окно требует только, чтобы ваш веб-крючок

  • был по общедоступному c адресу (ie - тот, который Google может разрешить и найти)
  • Запускает сервер HTTPS по этому адресу с самозаверяющий сертификат

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

...