#python #google-app-engine
# #python #google-app-engine
Вопрос:
Допустим, я создаю CMS на основе python на GAE (аналогично Squarespace / Shopify), которая позволяет пользователям создавать веб-сайт.
Платформа будет (автоматически?) создайте поддомен для каждого нового пользователя и дублируйте приложение.
Теперь есть два варианта:
1) Создайте новую базу данных для нового пользователя В РАМКАХ основного проекта GAE. (Я беспокоюсь, что если один пользователь получает много трафика, это может замедлить работу ВСЕХ веб-сайтов.)
2) Дублируйте весь проект.(Этот метод кажется сложным для выполнения, потому что либо мне приходится вручную создавать экземпляр приложения для каждого пользователя, либо мне нужно выяснить, как перехватить gcloud.py (или appcfg.py ) каким-то образом и сохраните мои учетные данные для входа в код.)
Какой выбор, скорее всего, обеспечит максимальную производительность по цене? Разрешен ли Google вариант 2 (или даже возможен)?
Редактировать: я провел еще несколько исследований по этому поводу, и это не очень документировано. Я нашел это в документах https://cloud.google.com/sdk/docs/scripting-gcloud в котором говорится о запуске gcloud из скриптов, хотя я не думаю, что это означает из python. Я изучаю appengine-jenkins, чтобы посмотреть, будет ли это работать для моей цели. Дайте мне знать, если у вас есть какая-либо дополнительная информация об этом.
Кроме того, похоже, что gcloud добавляет команду create в команду projects, которая может быть полезна для меня, если я смогу выяснить, как запустить gcloud из моего скрипта. https://cloud.google.com/sdk/gcloud/reference/alpha/projects/create
Комментарии:
1. Выбор 2 может рассматриваться как нарушение условий соглашения об использовании (поскольку у каждого приложения есть своя бесплатная ежедневная квота). cloud.google.com/terms/?csw=1 : «Ограничения. Клиент не будет… создайте несколько приложений, учетных записей или проектов для имитации или работы в качестве одного приложения, учетной записи или проекта (соответственно) или иным образом получите доступ к службам таким образом, чтобы избежать взимания платы »
2. Да, я полагаю, что что-то подобное может подпадать под это. Спасибо, что нашли это. Хотя, если бы мне пришлось вручную дублировать приложение для каждого пользователя, я не думаю, что это противоречило бы этому пункту.