Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Контейнер — это атомарная единица хранения в службе Azure Fluid Relay и представляет данные, хранящиеся в сеансе использования Fluid, включая операции и моментальные снимки. Среда выполнения Fluid использует контейнер для восстановления состояния сеанса Fluid, когда пользователь присоединяется в первый раз или при повторном присоединении после выхода.
При создании приложения с помощью Fluid Framework необходимо учитывать несколько аспектов, связанных с созданием и управлением контейнерами, как описано на этой схеме.
Основные понятия
Разрешения контейнера
В большинстве случаев разработчики хотят управлять инвентаризацией контейнеров и разрешений контейнера. К ним относятся сведения о том, кто имеет доступ к контейнерам, а также метаданные, такие как понятное имя контейнера.
Доступ к контейнерам
Контейнеры идентифицируются по идентификатору контейнера. Прежде чем пользователь сможет создать или открыть контейнер, он должен запросить JWT, который Fluid Runtime будет использовать при взаимодействии со службой ретрансляции Azure Fluid. Любой процесс с допустимым JWT может получить доступ к контейнеру. Разработчик несет ответственность за создание JWTs для доступа к контейнерам, что позволяет им контролировать бизнес-логику, чтобы управлять доступом в соответствии с их сценарием. Служба Fluid Relay Azure не обладает информацией о том, какие пользователи должны иметь доступ к контейнеру. Дополнительные сведения по этой теме см. в контракте токена Azure Fluid Relay
Замечание
Идентификатор поля JWT documentID соответствует идентификатору контейнера Fluid.
Именование контейнеров
Контейнеры называются службой Azure Fluid Relay во время создания контейнера. Действие "Создание" возвращает имя контейнера в виде GUID, который должен использоваться позже для открытия контейнера. В большинстве случаев разработчики хотят хранить идентификатор контейнера GUID, а также понятное имя в собственном хранилище данных для упрощения потоков обнаружения контейнеров.
Обнаружение контейнеров
Разработчики отвечают за любой пользовательский опыт и бизнес-логику, связанную с нахождением существующих контейнеров. Это может иметь вид просматриваемого списка контейнеров на основе участия пользователей в сеансе "Жидкость", прямого общего доступа к контейнерам между пользователями или программного назначения контейнеров существующим артефактам или процессам.
Пример потока создания контейнера
В этом примере приложение или страница загружается с помощью универсального JWT (не привязанного к конкретному контейнеру), которое клиентское приложение будет использовать при создании нового контейнера.
Клиентское приложение использует API Fluid Framework для создания нового контейнера в службе Azure Fluid Relay, которая приводит к объекту контейнера с новым идентификатором контейнера. Для дальнейшего взаимодействия с контейнером требуется новый JWT, содержащий идентификатор контейнера.
После создания нового контейнера клиент сохранит идентификатор контейнера в какой-то системе, которая сопоставляет контейнеры и пользователей с разрешениями. Эта система будет управлять любым интерфейсом обнаружения и просмотра контейнеров, которые разработчик хочет создать для своих пользователей.
Перед взаимодействием с контейнером клиент запрашивает JWT для конкретного контейнера, который будет использоваться для последующих вызовов из среды выполнения Fluid Framework в службу Ретранслятора Жидкости Azure.
Экспорт содержимого контейнера
Если приложение хранит данные, которые могут быть экспортированы конечными пользователями, разработчик приложения отвечает за создание функциональных возможностей экспорта в приложение, используя текущее состояние контейнера "Жидкость", представленное распределенными структурами данных, определенными в контейнере. Дополнительные сведения о подключении и открытии контейнеров "Жидкость" см. в статье "Контейнеры (fluidframework.com)". Дополнительные сведения о перечислении и удалении контейнеров с помощью API плоскости управления см.: Удаление контейнеров Fluid на сервере Microsoft Azure Fluid Relay.