Поделиться через


Прочие замечания, связанные с быстродействием

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

Учет различий в клиентских браузерах, устройствах и местоположениях

Приложения на основе холста могут использоваться на разных устройствах, в браузерах и в разных местах с различными состояниями сети. Когда выполняется клиент Power Apps, убедитесь, что используете современные, обновленные и поддерживаемые браузеры. Производительность приложения может отличаться при загрузке больших наборов данных на разных платформах, таких как iOS или Android. Это изменение происходит из-за различных ограничений сетевых запросов на каждой платформе. Например, количество разрешенных одновременных сетевых запросов отличается в зависимости от платформы. Эти различия могут существенно повлиять на время загрузки данных для больших наборов данных.

Учитывайте различия в географическом расположении локального шлюза данных и среды

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

Общие проблемы на стороне сервера

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

Возможные узкие места в источнике данных

Существует множество возможных причин возникновения узких мест в источнике данных. Обычно несколько таблиц в источнике данных находятся в центре активности многих запросов. Запросы могут выполняться медленно, если:

  • Источник данных отсутствует или имеет неверные индексы.
  • Запрос объединяет необычайно большие объемы данных на сервере.
  • Для запроса требуется сканирование таблицы, например, оператор In вместо использования индекса типа StartsWith.
  • На серверном компьютере, на котором размещается источник данных, не хватает ресурсов.
  • У серверного экземпляра SQL есть блокировки, взаимоблокировки или конфликт ресурсов.
  • Локальный шлюз данных неработоспособен.
  • Локальный шлюз данных следует масштабировать.

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

Конкретные источники данных

База данных SQL Azure

Важно выбрать правильный уровень, соответствующий требованиям вашего бизнеса. Дополнительные сведения см. в документации по базе данных Azure SQL. У более низкого уровня есть некоторые ограничения. С точки зрения производительности важны ЦП, производительность ввода-вывода и задержка. Следовательно, рекомендуется периодически проверять производительность базы данных SQL и проверять, не превышает ли использование ресурсов пороговое значение. Например, локальный SQL Server обычно устанавливает порог использования ЦП примерно на 75процентов.

SharePoint

Соединитель SharePoint можно использовать для создания приложений, которые используют данные из списков SharePoint. Вот некоторые распространенные проблемы с производительностью и способы их решения для SharePoint:

Избегайте слишком большого количества столбцов динамического поиска: SharePoint поддерживает различные типы данных, включая динамический поиск, такой как Человек, Группа и Вычислено. Если список определяет слишком много динамических столбцов, требуется больше времени, чтобы управлять этими динамическими столбцами в SharePoint перед возвратом данных клиенту, запускающему приложение на основе холста. Во избежание этого не злоупотребляйте столбцами динамического поиска в SharePoint. Например, используйте статические столбцы для хранения псевдонимов электронной почты или имен людей.

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

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

Dataverse

При использовании Microsoft Dataverse в качестве источника данных запросы данных передаются напрямую в экземпляр среды, без прохождения через управление API Azure. Таким образом, он имеет тенденцию быть быстрее, чем другие источники данных. Дополнительные сведения см. в разделе Поток вызова данных при подключении к Microsoft Dataverse.

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

Excel

Соединитель Excel позволяет приложениям на основе холста подключаться к таблице в файле Excel. Однако этот соединитель имеет ограничения по сравнению с другими источниками данных. Например, он ограничивает приложение на основе холста загрузкой данных из таблицы только до 2000 записей из-за ограниченности делегируемых функций. Чтобы загрузить более 2000 записей, разделите данные в разных таблицах данных как другие источники данных.

Используйте новый соединитель Excel: обязательно используйте новый соединитель Excel — Excel Business Online. Это обеспечивает многопользовательский доступ, и он лучше справляется с конфликтами.

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

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

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

Включение предзагрузки приложения для ускорения работы

При желании вы можете предварительно загружать свое приложение, чтобы повысить быстродействие.

  1. Выполните вход в Power Apps.

  2. В левой области переходов выберите Приложения.

  3. Выберите приложение, затем выберите Параметры на панели команд.

  4. В области Параметры приложения установите для параметра Предварительно загружать приложение для повышения производительности значение Да. После этого приложение будет предварительно загружено.

  5. Чтобы изменения вступили в силу для приложений, встроенных в Teams, удалите и снова добавьте свое приложение в Teams.

    Заметка

    Это делает скомпилированные ресурсы приложения доступными через конечные точки без проверки подлинности, что позволяет загружать их перед проверкой подлинности. Однако пользователи по-прежнему могут использовать ваше приложение для доступа к данным через соединители только после завершения проверки подлинности и авторизации. Такое поведение гарантирует, что данные, которые приложение извлекает из источников данных, не будут доступны несанкционированным пользователям. Скомпилированные ресурсы приложения включают набор файлов JavaScript, содержащих текст, созданный в элементах управления приложения (например, элементы управления PCF), медиаресурсы (например, изображения), имя приложения и URL-адрес среды, в которой находится приложение.

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