Руководство по созданию коммерческого готового приложения Azure Удаленная отрисовка

В этом руководстве вы рассмотрите следующее:

  • Управление сеансами для коммерческих приложений
  • Отслеживание сеансов для выставления счетов
  • Оптимизация взаимодействия с пользователем во время загрузки сеанса
  • Рекомендации относительно задержки сети

Необходимые компоненты

Основные понятия готовности для коммерческого использования

Удаленная отрисовка Azure расширяет доступные возможности смешанной реальности. Хотя в вашем решении уже интегрированы основные возможности, существует ряд дополнительных соображений, позволяющих обеспечить безопасность, масштабируемость и готовность вашего решения к использованию.

В этом модуле описываются некоторые дополнительные возможности, которые могут потребоваться для коммерческого применения.

Более подробные рекомендации в отношении системной архитектуры см. здесь:

Аналитика

Интеграция средств аналитики может помочь в управлении, отслеживании и улучшении вашего решения.

Полный список доступных ресурсов для аналитики см. здесь:

Отслеживание использования для выставления счетов

Отслеживание использования Удаленной отрисовки Azure несколькими внутренними группами или внешними клиентами является важным фактором, особенно в ситуациях с несколькими клиентами.

Для этого Azure предлагает службу, именуемую теги ресурсов, которая связывает использование службы "Удаленная отрисовка Azure" с каждым клиентом.

Дополнительные сведения об именовании ресурсов и добавлении тегов см. здесь:

Диагностика

Эффективные средства, такие как трассировка событий Windows (ETW) и ведение журнала трассировки событий (ETL), упрощают создание событий трассировки в приложении и позволяют диагностировать сеть, прием содержимого, сеанс, приложение и выявлять другие проблемы, которые могут возникнуть в процессе коммерческого развертывания решения.

Дополнительные сведения можно найти по следующим ссылкам:

Анализ использования

Azure Application Insights помогает понимать, как пользователи используют приложение Удаленной отрисовки Azure. Каждый раз при обновлении приложения вы можете оценить, насколько хорошо оно работает для пользователей, и в соответствии с этим улучшить свое решение. Обладая такими сведениями, можно принимать решения на основе данных по дальнейшим циклам разработки.

Дополнительные сведения можно найти по следующим ссылкам:

Стратегии быстрого запуска

Ваш вариант использования может потребовать быстрого запуска приложения для просмотра трехмерной модели. Например, на важном совещании, где крайне необходимо, чтобы все было заблаговременно готово к работе. Другим примером может послужить анализ трехмерной модели САПР, где быстрая итерация между приложением САПР и смешанной реальностью является ключевым фактором эффективности.

Для Удаленной отрисовки Azure требуются предварительно обработанные трехмерные модели, а для создания сеанса и загрузки модели для отрисовки Azure на данный момент требуется несколько минут. Для максимального ускорения и непрерывности этого процесса необходимо заранее подготовить данные трехмерной модели и сеанс Удаленной отрисовки Azure.

Предлагаемые здесь рекомендации не являются частью стандартной Удаленной отрисовки Azure, но их можно реализовать самостоятельно, чтобы сократить время запуска.

Заблаговременная подготовка

Чтобы сократить время запуска, проще всего переместить создание и инициализацию сеанса на как можно более ранний этап в рабочем процессе пользователя. Одна из стратегий — инициализировать сеанс, как только становится известно, что потребуется сеанс Удаленной отрисовки Azure. Часто это случается, когда пользователь начинает отправлять трехмерную модель в Хранилище BLOB-объектов Azure для использования с Удаленной отрисовкой Azure. В этом случае создание и инициализацию сеанса можно начать одновременно с передачей трехмерной модели таким образом, чтобы оба рабочих потока выполнялись параллельно.

Этот процесс можно упростить, убедившись, что выбранные входные и выходные контейнеры Хранилища BLOB-объектов Azure находятся в том же регионе, что и сеанс Удаленной отрисовки Azure.

Планирование

Если вы уверены, что в будущем потребуется выполнить Удаленную отрисовку Azure, можно запланировать определенные дату и время для запуска сеанса Удаленной отрисовки Azure.

Этот вариант можно реализовать через веб-портал, на котором пользователи смогут отправить трехмерную модель и запланировать время для ее просмотра. Этот подход также удобен для выяснения других параметров, таких как отрисовка уровня Стандартный или Премиум. Отрисовка уровня Премиум может подойти, если нужно отобразить сочетание ресурсов, где идеальный размер труднее определить автоматически или необходимо обеспечить доступность виртуальных машин в регионе Azure в указанное время.

Объединение сеансов в пул

В самых сложных ситуациях возможен другой вариант — объединение сеансов в пул, когда постоянно создаются и инициализируются один или несколько сеансов. При этом создается пул сеансов для немедленного использования запрашивающим пользователем. Недостаток этого подхода заключается в том, что после инициализации виртуальной машины начинается выставление счетов за службу. Поддерживать постоянную работу пула сеансов может оказаться недешево, но, основываясь на аналитике, можно прогнозировать пиковые нагрузки или привлекать стратегию планирования, приведенную выше, чтобы прогнозировать потребность в сеансах, а затем соответствующим образом вызывать и отключать пул сеансов.

Эта стратегия также помогает оптимизировать динамический выбор между сеансами уровня Стандартный или Премиум, так как гораздо быстрее переключаться между двумя типами в одном сеансе пользователя, например в случае, когда сначала просматривается модель сложности уровня Премиум, а затем происходит работа с моделью сложности уровня Стандартный. Если эти пользовательские сеансы довольно длинные, это может значительно сократить затраты.

Дополнительные сведения о сеансах Удаленной отрисовки Azure см. здесь:

Стратегии маршрутизации размера сервера уровня "Стандартный" и "Премиум"

Необходимость выбирать размер сервера (уровня Стандартный или Премиум), вызывает сложности при проектировании взаимодействия с пользователем и самой системы. Хотя можно предпочесть использование только сеансов уровня Премиум, сеансы уровня Стандартный требуют гораздо меньше ресурсов вычислений Azure и обходятся дешевле, чем Премиум. Это обеспечивает серьезную мотивацию для использования сеансов уровня Стандартный везде, где это возможно, и использования уровня Премиум только при необходимости.

Здесь мы предлагаем несколько вариантов, от минимального до наиболее полного, для решения проблемы управления выбором сеанса.

Используйте только уровень "Стандартный" или "Премиум"

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

Аналогичным образом, если предполагается, что большая часть использования превышает пороговое значение между уровнями Стандартный и Премиум или затраты не являются ключевым фактором в вашем варианте использования, всегда следует выбирать уровень Премиум.

Запрос у пользователя

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

Анализ трехмерной модели

Еще один сравнительно простой подход заключается в анализе сложности выбранных трехмерных ресурсов. Если сложность модели ниже порогового значения для уровня Стандартный, инициируйте сеанс уровня Стандартный, в противном случае инициируйте сеанс уровня Премиум. В этом случае проблема заключается в том, что в конечном итоге один сеанс может быть использован для просмотра нескольких моделей, некоторые из которых могут превысить пороговое значение сложности сеанса уровня Стандартный, что привело бы к невозможности беспрепятственно использовать один сеанс для последовательности различных трехмерных ресурсов.

Автоматическое переключение

Автоматическое переключение между сеансами уровня Стандартный и Премиум может иметь смысл в структуре системы, которая также предусматривает пулы сеансов. Эта стратегия позволяет и в дальнейшем оптимизировать использование ресурсов. По мере того как пользователь загружает модели для просмотра, определяется сложность и нужный уровень сеанса запрашивается из службы пулов сеансов.

Работа с сетями

Диагностика

Для Удаленной отрисовки Azure требуется скоростное подключение к Интернету с низкой задержкой. Качество сети пользователя может оказать значительное влияние на качество работы. Учитывая, что у клиентов могут быть разные конфигурации сети и лишь иногда возможна низкая задержка в сети, средства диагностики имеют огромное значение.

Чтобы обеспечить единообразное взаимодействие с пользователем, мы рекомендуем интегрировать в приложения Удаленной отрисовки Azure на стороне сервера и на стороне клиента средства аналитики. Это даст вам информацию, необходимую для диагностики и устранения проблем с сетью, которые могут возникать у клиентов.

Конфигурации клиентской сети

Одна из крупнейших проблем, возникающих при разработке надежных решений для совместной работы, которые развертываются в самых разных корпоративных средах, — это готовность работы в различных топологиях сети и с различными конфигурациями брандмауэров предприятий, которые могут использоваться клиентами.

Многие предприятия блокируют весь одноранговый трафик в локальной сети. Это затрудняет использование преимуществ оптимизированного и упрощенного механизма автоматического обнаружения сетевых подключений для создания локального общего сеанса для всех обнаруженных экземпляров приложения смешанной реальности.

Другими потенциальными точками неполадок являются маршрутизаторы, настроенные для намеренного регулирования пропускной способности и брандмауэров, блокирующих большинство портов TCP/IP.

Если вы планируете использовать Удаленную отрисовку Azure в неизвестной сети, рекомендуется выполнить следующие действия.

  • Составьте контрольный список для оценки предварительной готовности к работе в сети.
  • Убедитесь, что соответствующий региональный центр обработки данных может обслужить запрос.
  • Дайте достаточно времени для диагностики любых проблем.
  • Подключите мобильную точку доступа с высокоскоростным подключением в качестве резервного канала.

Пропускная способность

Важно оценить пропускную способность каждого участка сети, который может существовать между виртуальной машиной Удаленной отрисовки Azure и конечным клиентом. Помните, что сегмент сети от центра обработки данных Azure до поставщика услуг Интернета клиента может быть более ограничивающим фактором, чем от поставщика услуг Интернета до клиента. Для диагностики таких проблем можно использовать тест скорости загрузки больших двоичных объектов.

Конкурирование за пропускную способность

При проектировании приложения смешанной реальности следует помнить, что различные функции приложения могут конкурировать с Удаленной отрисовкой Azure за пропускную способность. Наиболее вероятным примером является случай, когда многим участникам в одном помещении требуется одновременно использовать Удаленную отрисовку Azure для просмотра трехмерного ресурса. Каждая часть потока данных сети должна обладать емкостью для передачи суммарного потока данных Удаленной отрисовки Azure.

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

Дополнительные сведения об аналитике сети см. здесь:

Рекомендации для совместной работы

Некоторые из наиболее ценных применений Удаленной отрисовки Azure предполагают совместную работу нескольких участников, одновременно просматривающих одни и те же трехмерные возможности. В этих общих сеансах важно понимать, что каждому участнику потребуется уникальный сеанс Удаленной отрисовки Azure, независимо от того, находятся ли они в одном месте в одной сети или нет.

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

Несколько сеансов Удаленной отрисовки Azure

Если вы собираетесь реализовать совместное взаимодействие с Удаленной отрисовкой Azure, необходимо подготовить системы для создания сеансов Удаленной отрисовки Azure и управления ими, чтобы инициировать несколько сеансов. Эти сеансы могут быть инициализированы в разных центрах обработки данных Azure, если участники географически удалены друг от друга.

Система должна также контролировать возможность того, что один или несколько участников могут находиться в географическом регионе, который в настоящее время не поддерживается службой "Удаленная отрисовка Azure" или в настоящее время не имеет доступных экземпляров виртуальной машины для Удаленной отрисовки Azure.

Такое управление несколькими одновременными сеансами можно усовершенствовать при совместном использовании пула сеансов и других стратегий, рассмотренных в этом документе.

Рекомендации для Хранилища BLOB-объектов Azure

Все одновременно выполняющиеся сеансы Удаленной отрисовки Azure могут ссылаться на один универсальный код ресурса (URI) SAS для просмотра преобразованной модели. Это позволяет передавать и преобразовывать нужные трехмерные активы и затем совместно использовать их во всех сеансах. Это особенно важно, когда участники размещены рядом и используют тот же центр обработки данных, когда нет проблем с производительностью, связанных с Хранилищем BLOB-объектов Azure, расположенным в другом центре обработки данных, отличном от того, на котором находится сервер Удаленной отрисовки Azure и пользователь.

Если трехмерные ресурсы обычно отправляются для одного сеанса просмотра, а затем удаляются, например в ходе проверки проекта, географическое расположение Хранилища BLOB-объектов Azure относительно сервера Удаленной отрисовки Azure также менее важно.

Однако для трехмерных ресурсов, которые будут использоваться многократно, например для учебных целей, мы рекомендуем хранить готовые трехмерные ресурсы в Хранилище BLOB-объектов в каждом региональном центре обработки данных, где планируется использовать Удаленную отрисовку Azure. Этот процесс можно автоматизировать с помощью избыточности хранилища Azure. Сеть доставки содержимого Microsoft Azure часто используется для этой цели, но для Удаленной отрисовки Azure она еще не доступна.

Дополнительные сведения см. по ссылке .

Управление доступом к моделям

Для эффективного использования Удаленной отрисовки Azure требуется тщательное рассмотрение комплексной инфраструктуры для управления трехмерными моделями.

Преимущество Удаленной отрисовки Azure заключается в том, что большие объемы трехмерных ресурсов никогда не должны передаваться непосредственно на устройство смешанной реальности перед просмотром. Кроме того, после отправки и преобразования трехмерного ресурса для использования с Удаленной отрисовкой Azure любое количество пользователей может совместно использовать этот единственный экземпляр трехмерной модели.

Рекомендации по доступу к трехмерной модели

Ниже приведены некоторые ключевые моменты, которые следует учитывать при принятии решения о стратегии доступа к модели.

Основываясь на ожидаемом варианте использования, определите лучшее место или сочетание мест, чтобы позволить пользователю выбрать трехмерные ресурсы для просмотра. Ниже приведены некоторые распространенные параметры.

  • Непосредственно в самой смешанной реальности
  • На вспомогательном веб-портале
  • Во вспомогательном классическом или мобильном приложении

Если в сценарии использования есть закономерности, в которых один и тот же трехмерный ресурс может быть передан несколько раз, серверная часть будет следить за тем, какие модели уже преобразованы для использования с Удаленной отрисовкой Azure, чтобы предварительно обрабатывать модель только один раз для нескольких последующих использований. Примером проверки проектирования может послужить ситуация, когда группа имеет доступ к общему исходному 3D-ресурсу. Каждый член группы должен проверить модель с помощью Удаленной отрисовки Azure в некоторой точке своего рабочего потока. Поэтому этап предварительной обработки активируется только при первом представлении. Последующие представления будут искать связанный обработанный файл в контейнере вывода SAS.

В зависимости от варианта использования вам, скорее всего, потребуется определить и, возможно, поддерживать нужный размер сервера Удаленной отрисовки Azure (уровня Стандартный или Премиум) для каждого 3D-ресурса или группы ресурсов, которые будут просматриваться вместе в одном сеансе.

Список выбора модели на устройстве

Во многих вариантах использования, таких как обучение, инструкции или маркетинговые приложения, набор трехмерных ресурсов, которые обычно просматриваются в Удаленной отрисовке Azure, может быть по большей части статическим. В таких ситуациях проверенный набор трехмерных ресурсов можно предварительно преобразовать и сделать доступным через базу данных, содержащую необходимые сведения для заполнения списка проверенных ресурсов. Затем эти данные можно получить из приложения смешанной реальности, а затем заполнить меню выбора.

Можно немного усложнить процесс, при этом предложив передать частные трехмерные ресурсы, уникальные для каждого пользователя или группы. Этот список частных ресурсов можно объединить со списком распространенных проверенных ресурсов в пользовательском интерфейсе для выбора просматриваемых трехмерных ресурсов.

Доступ к OneDrive на устройстве

Учитывая, что средство выбора файлов OneDrive изначально встроено в устройства смешанной реальности Майкрософт, выбор трехмерных ресурсов в OneDrive на устройстве является удобным, особенно для случаев, когда часто загружаются различные трехмерные модели. В этом сценарии пользователь выбирает один или несколько трехмерных ресурсов с помощью средства выбора файлов OneDrive в приложении смешанной реальности. Затем трехмерные ресурсы будут перенесены в контейнер ввода SAS, преобразованы в контейнер вывода SAS и подключены к сеансу Удаленной отрисовки Azure. В идеале приложение смешанной реальности вызовет облачный процесс для выполнения этих действий, в отличие от перемещения всех данных из OneDrive на устройство и обратно в Хранилище BLOB-объектов Azure.

Этот подход можно усложнить, если сохранить связь между трехмерными ресурсами, которые были просмотрены ранее, таким образом, что при повторном выборе одной и той же модели из OneDrive приложение может обходить процесс преобразования и напрямую загружать связанный преобразованный 3D-ресурс через универсальный код ресурса (URI) SAS.

Дополнительные сведения см. по ссылке .

Прямой доступ к САПР

Один из интересных вариантов использования смешанной реальности — это проверка работы САПР в ходе разработки. В этом сценарии самое важное — это максимально быстрое время загрузки с ПК в смешанную реальность. Идеальное решение может потребовать разработки подключаемых модулей для конкретных приложений САПР. Эти подключаемые модули непосредственно управляют всеми аспектами процесса загрузки, преобразования и просмотра.

  • Предоставление пользовательского интерфейса для:
    • связывания приложения САПР с конкретным устройством смешанной реальности (единожды);
    • запрашивания просмотра выбранной геометрии на устройстве смешанной реальности.
  • Запустите сеанс Удаленной отрисовки Azure (если он еще не запущен), чтобы он мог обрабатываться параллельно при отправке и преобразовании файла САПР.
  • Нормализации данных геометрии САПР до одного из форматов, поддерживаемых удаленной отрисовкой Azure.
  • Передачи нормализованных данных непосредственно в контейнер ввода Хранилища BLOB-объектов Azure.
  • Инициации процесса преобразования модели
  • Связывания универсального кода ресурса (URI) SAS контейнера выходных данных модели с сеансом Удаленной отрисовки Azure.
  • Уведомления связанного приложения смешанной реальности о том, что модель доступна и готова к просмотру, и предоставления универсального кода ресурса (URI) SAS для контейнера выходных данных, чтобы приложение могло присоединить его к сеансу.

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

Azure Marketplace

Многие корпоративные клиенты настаивают на том, чтобы по соображениям безопасности Azure Stack можно было развертывать под собственными учетными записями и учетными данными Azure. Чтобы это было возможно, вы можете упаковать управляемое приложение Azure таким образом, чтобы его можно было опубликовать в Azure Marketplace как предложение Azure AD App.

Дополнительные сведения см. по ссылке .

Безопасность

Для обеспечения безопасности очень важно с самого начала создавать комплексное решение для Удаленной отрисовки Azure. Существует множество аспектов безопасности, которые следует учитывать при проектировании комплексного решения, в том числе перечисленные ниже.

  • Стратегии аутентификации
  • Управление доступом — группы, политики и разрешения.
  • Мультитенантность
  • Хранение и шифрование данных.
  • Маркеры временного использования.
  • Распределенные атаки типа "отказ в обслуживании" (DDoS).
  • Обнаружение угроз
  • VPN и безопасные сети.
  • Брандмауэры
  • Управление сертификатами и секретными ключами.
  • Уязвимость приложений и эксплойты

Для проверки подлинности разумно переместить как можно большую часть проверки подлинности и управления сеансами в веб-службу Azure. Это приведет к повышению управляемости и безопасности такого решения.

Дополнительные сведения см. по ссылке .