API de Namespaces para Java 8

La API de espacios de nombres de Google App Engine facilita la compartimentación de tus datos de Google App Engine. Esta API se implementa a través de un paquete nuevo llamado administrador de espacios de nombres y se incorpora en ciertas API habilitadas para los espacios de nombres.

Cuando configuras un espacio de nombres en el administrador de espacios de nombres, estas API obtienen el espacio de nombres actual y lo usan en forma global. Puedes declarar explícitamente un espacio de nombres en forma local, pero debes tener cuidado al hacerlo, ya que sin darte cuenta podrías crear filtraciones de datos y otros errores. Cualquier solicitud de App Engine puede acceder a cualquier espacio de nombres para que la aplicación aplique una política de control de acceso en todos los espacios de nombres.

Puedes utilizar la API de Namespaces para crear un amplio rango de aplicaciones. Uno de los usos más convincentes de esta API es para las aplicaciones multiusuario, como se describe a continuación.

Acerca de la arquitectura multiusuario

Multiusuario es el nombre que recibe una arquitectura de software en la que una instancia de una aplicación, que se ejecuta en un servidor remoto, realiza entregas a muchas organizaciones cliente (también conocidas como instancias).

El uso de una arquitectura multiusuario simplifica la administración y el aprovisionamiento de instancias. Puedes proporcionar una experiencia del usuario más ágil y personalizada, y también agregar diferentes sistemas aislados de datos en un solo esquema de base de datos. En consecuencia, tus aplicaciones se vuelven más escalables y más rentables a medida que creces. Los datos se pueden segregar y analizar con mayor facilidad entre las instancias, porque todas ellas comparten el mismo esquema de base de datos. Los distintos grupos de usuarios ven contenido personalizado unido a una aplicación más eficiente.

Cómo compilar una aplicación multiusuario con la API de Namespaces

Con la API de espacios de nombres, puedes compartimentar con facilidad los datos entre instancias con solo especificar una string de espacio de nombres única para cada instancia. Simplemente configuras el espacio de nombres para cada instancia en forma global mediante el administrador de espacios de nombres (en lugar de configurarlo de forma explícita para una solicitud determinada). Las API compatibles con espacios de nombres siempre usan el espacio de nombres actual de forma predeterminada.

La API de Namespaces se integra en G Suite, lo que te permite usar tu dominio de G Suite como el espacio de nombres actual. Dado que G Suite te permite implementar tu aplicación en cualquier dominio que tengas, puedes configurar espacios de nombres únicos fácilmente para todos los dominios vinculados a tu cuenta de G Suite.

Cuando diseñas aplicaciones multiusuario, debes evitar que los datos se filtren a través de los espacios de nombres. Para obtener más información, consulta Cómo evitar la filtración de datos.

API de App Engine que usan espacios de nombres

Actualmente App Engine admite espacios de nombres en las siguientes API:

Muestras de proyectos con espacios de nombres

Se proporcionan dos muestras de aplicaciones de libro de visitas que usan espacios de nombres:

Otros usos de la API de Namespaces

Si bien la API de Namespaces habilita la función multiusuario en App Engine, también tiene otros usos, entre ellos:

  • Compartimentalización de la información del usuario
  • Separación de los datos del administrador y los datos de la aplicación
  • Creación de instancias de almacén de datos diferentes para pruebas y producción
  • Ejecución de varias aplicaciones en una única instancia de App Engine