Administración de contenedores de fluidos

Un contenedor es la unidad atómica de almacenamiento en el servicio Azure Fluid Relay y representa los datos almacenados desde una sesión de Fluid, incluidas las operaciones y las instantáneas. El entorno de ejecución de Fluid usa el contenedor para rehidratar el estado de una sesión de Fluid cuando un usuario se une por primera vez o se vuelve a unir después de salir.

Al compilar una aplicación con Fluid Framework, hay varias cosas que debe tener en cuenta con respecto a la creación y administración de contenedores, como se resume en este diagrama.

Ilustración de la arquitectura de un servicio Fluid y de qué elementos son propiedad de los desarrolladores frente a Microsoft.

Conceptos clave

Permisos de contenedor

En la mayoría de los casos, los desarrolladores querrán administrar un inventario de contenedores y permisos de contenedor. Esto incluiría información sobre quién tiene acceso a los contenedores, así como metadatos como el nombre descriptivo del contenedor.

Acceso a contenedores

Los contenedores se identifican mediante un identificador de contenedor. Para que un usuario pueda crear o abrir un contenedor, debe solicitar un JWT que Fluid Runtime usará al comunicarse con el servicio Azure Fluid Relay. Cualquier proceso con un JWT válido puede acceder a un contenedor. Es responsabilidad del desarrollador generar JWT para el acceso al contenedor, lo que los pone en control de la lógica de negocios para controlar el acceso según corresponda para su escenario. El servicio Azure Fluid Relay no tiene conocimiento de qué usuarios deben tener acceso a un contenedor. Para más información sobre este tema, consulte Contrato de token de Azure Fluid Relay.

Nota:

El campo JWT documentID corresponde al ID del contenedor Fluid.

Nomenclatura de los contenedores

El servicio Azure Fluid Relay denomina los contenedores en el momento de la creación del contenedor. La acción Crear devuelve un nombre de contenedor en forma de GUID que se debe usar más adelante para abrir el contenedor. En la mayoría de los casos, los desarrolladores querrán almacenar este GUID de identificador de contenedor, junto con un nombre descriptivo, en su propio almacén de datos para facilitar los flujos de detección de contenedores.

Detección de contenedores

Los desarrolladores son responsables de cualquier experiencia y lógica empresarial relacionada con la detección de usuarios de contenedores existentes. Esto podría adoptar la forma de una lista explorable de contenedores en función de la participación del usuario en la sesión de Fluid, el uso compartido directo de contenedores entre usuarios o la asignación mediante programación de contenedores a los artefactos o procesos existentes.

Flujo de creación de contenedores de ejemplo

Diagrama que describe los flujos de datos del proceso de creación de contenedores

En este ejemplo, la aplicación o la página se cargan con un JWT genérico (no enlazado a un contenedor específico) que la aplicación cliente usará cuando llegue el momento de crear un nuevo contenedor.

La aplicación del lado cliente usa Fluid Framework API para crear un nuevo contenedor en el servicio Azure Fluid Relay, lo que da como resultado un objeto contenedor con un identificador de contenedor recién asignado. Las interacciones adicionales con el contenedor requieren un nuevo JWT que contenga el identificador de contenedor.

Una vez que el cliente haya creado el nuevo contenedor, guardará el identificador del contenedor en algún sistema que asigna contenedores y usuarios para administrar los permisos. Este sistema impulsará cualquier experiencia de detección o exploración de contenedores que el desarrollador quiera crear para sus usuarios.

Antes de interactuar con el contenedor, el cliente solicitará un JWT específico del contenedor que se usará para las llamadas posteriores del entorno de ejecución de Fluid Framework al servicio Azure Fluid Relay.

Exportación del contenido del contenedor

Si una aplicación almacena los datos que pueden necesitar exportar los usuarios finales, el desarrollador de la aplicación es responsable de compilar esa funcionalidad de exportación en su aplicación, usando el estado actual del contenedor de Fluid tal y como se representa mediante las estructuras de datos distribuidas definidas en el contenedor. Para obtener más información sobre cómo conectarse y abrir contenedores de Fluid, consulte: Contenedores (fluidframework.com). Para obtener más información sobre cómo enumerar y eliminar contenedores con la API del plano de control, consulte: Eliminación de contenedores fluidos en Microsoft Azure Fluid Relay Server.

Consulte también