Google App Engine - um armazenamento de dados para diferentes domínios e aplicativos

StackOverflow https://stackoverflow.com/questions/811166

  •  03-07-2019
  •  | 
  •  

Pergunta

É que de alguma forma possível o acesso de um armazenamento de dados? Ou acesso de um aplicativo a partir de diferentes domínios.

Foi útil?

Solução

Cada aplicativo tem seu próprio armazenamento de dados e memcache (compartilhado entre todas as versões desse app). Não parece possível datastores compartilhar entre aplicativos agora (a menos que você fornecer algum serviço web para isso), mas que seria um bom recurso para ter, então talvez você deve arquivar um pedido de recurso com o Google < a href = "http://code.google.com/p/googleappengine/issues/detail?id=1300" rel = "noreferrer"> voto para ele .

Quanto aos domínios, você pode associar seu aplicativo com domínios gerido pelo Google Aplicativos . Vários domínios para a mesma aplicação não deve ser problema (exceto para certificados SSL).

Outras dicas

App Engine adicionar recentemente suporte para um recurso chamado módulos (Docs: go , python , java )

App Engine Modules (ou apenas "módulos" a seguir) é um recurso que permite que os desenvolvedores grande fator aplicações em componentes lógicos que podem compartilhar serviços com estado e comunicar de uma forma segura. Um aplicativo que os pedidos alças clientes podem incluir módulos separados para lidar com outras tarefas:

  • solicitações de API de dispositivos móveis
  • Interno, admin-like solicitações
  • Backend processamento, tais como dutos de faturamento e análise de dados

Quando você cria um novo módulo, o App Engine irá criar uma URL que corresponde ao nome do módulo. Se você tiver apenas um módulo, em seguida, o nome será default. por exemplo.

  • http: // padrão .myapp.appspot.com
  • http: // mobile-frontend .myapp.appspot.com
  • http: // meu-módulo .myapp.appspot.com

Usando Domínio mascaramento , você poderia, então, direto de:

  • www.myapp.com => http: // padrão .myapp.appspot.com
  • www.myapp-mobile.com => http: // mobile-frontend .myapp.appspot.com
  • www.example.com => http: // meu-módulo .myapp.appspot.com

Cada versão de um aplicativo é apoiado pelo mesmo armazenamento de dados. Se você quiser limitar o acesso para os pedidos individuais, você precisa adicionar um campo para o seu modelo para impor essa restrição. Há ganchos de baixo nível na API do armazenamento de dados para esse tipo de coisa, se você quiser ir tão longe.

E sim, você pode adicionar um único aplicativo App Engine para vários domínios -. Mesmo em múltiplos Apps contas

A solução de Kyle iria funcionar, mas App Engine nunca foi projetado para ser usado desta forma. Então, se você arquiteto seu aplicativo (s) que contar com este tipo de configuração e Google braçadeiras para baixo por qualquer motivo, então você estaria ferrado.

Você pode ter multitenancy usando o Namespace Java API

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top