Google App Engine - одно хранилище данных для разных доменов и приложений - PullRequest
15 голосов
/ 01 мая 2009

Возможно ли как-то получить доступ к одному хранилищу данных? Или получить доступ к одному приложению из разных доменов.

Ответы [ 5 ]

20 голосов
/ 04 января 2010

App Engine недавно добавил поддержку функции, называемой модулями (Документы: go , python , java )

Модули App Engine (или просто «Модули» в дальнейшем) - это функция, которая позволяет разработчикам разделять большие приложения на логические компоненты, которые могут совместно использовать службы с сохранением состояния и взаимодействовать безопасным способом. Приложение, которое обрабатывает запросы клиентов, может включать отдельные модули для выполнения других задач:

  • API-запросы от мобильных устройств
  • Внутренние административные запросы
  • Бэкэнд-обработка, такая как биллинговые конвейеры и анализ данных

Когда вы создаете новый модуль, App Engine создаст URL, соответствующий имени модуля. Если у вас есть только один модуль, тогда имя будет default. например,

  • http://default.myapp.appspot.com
  • http://mobile‑frontend.myapp.appspot.com
  • http://my -модуль .myapp.appspot.com

Используя Маскирование домена , вы можете затем направлять с:

  • www.myapp.com => http://default.myapp.appspot.com
  • www.myapp-mobile.com => http://mobile‑frontend.myapp.appspot.com
  • www.example.com => http://my -модуль .myapp.appspot.com
12 голосов
/ 01 мая 2009

Каждое приложение имеет свое собственное хранилище данных и memcache (общий для всех версий этого приложения). Кажется, сейчас невозможно обмениваться хранилищами данных между приложениями (если вы не предоставите для этого какую-либо веб-службу), но это было бы неплохо, так что, возможно, вам следует подать запрос на функцию в Google проголосуй за это .

Что касается доменов, вы можете связать свое приложение с доменами, управляемыми Службами Google . Несколько доменов для одного и того же приложения не должны вызывать проблем (за исключением сертификатов SSL).

3 голосов
/ 30 сентября 2010

Решение Кайла сработает, но App Engine никогда не был разработан для такого использования. Так что, если вы разрабатываете свои приложения для такой установки, а Google по какой-либо причине отключается, то вас обидят.

3 голосов
/ 01 мая 2009

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

И да, вы можете добавить одно приложение App Engine в несколько доменов - даже в несколько учетных записей приложений.

2 голосов
/ 30 октября 2010

Вы можете работать в нескольких арендаторах, используя Java API Namespace

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