Skip To Content

Отправить объекты в потоковый сервис

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

Потоковые сервисы аналогичны традиционным картографическим сервисам и сервисам объектов в том, что их можно обнаружить при просмотре содержимого ArcGIS Server REST Services Directory. Потоковый сервис - это один из типов сервисов ArcGIS Server, который доступен только в случае, когда в ArcGIS Enterprise добавлены возможности работы с данными в режиме реального времени с лицензионной ролью ArcGIS GeoEvent Server. Потоковые сервисы ориентированы на распространение данных в реальном времени с малой задержкой для рабочих процессов клиент-сервер. Ключевое отличие между потоковыми сервисами и традиционными картографическими сервисами и сервисами объектов заключается в том, что, как правило, потоковые сервисы не сохраняют данные. Возможность потокового сервиса Хранить последние является исключением из этого правила. Потоковые сервисы используют технологию WebSocket для установления двунаправленной связи и распространения данных с клиентами. Клиенты подписываются на получение данных в режиме реального времени, а не опрашивают базу геоданных для получения данных.

Опубликованный потоковый сервис не будет принимать или транслировать какие-либо данные, если только Выходной Оператор подключения Отправить объекты в потоковый сервис не настроен и включен в сервис GeoEvent.

Более подробную информацию по потоковым сервисам геообработки см. в разделе Потоковые сервисы. Руководство по потоковым сервисам включает приложения, которые позволят вам лучше познакомиться с ними. Видео о возможностях потоковых сервисов доступно в блоге Esri Community Stream Services, Store Latest, and Related Features.

Примечания по использованию

  • Используйте этого выходной оператор подключения для форматирования данных записей о событиях в виде объектов JSON и трансляции записей объектов через WebSocket потокового сервиса.
  • Выходной оператор подключения создает пару из Исходящего адаптера JSON с Исходящим транспортом потокового сервиса.
  • Для использования потоковых сервисов у вас должна быть лицензия ArcGIS Server, ArcGIS GeoEvent Server, а также должен быть запущен сервис ArcGIS GeoEvent Server.
  • ArcGIS Server, под которым работает ArcGIS GeoEvent Server, может быть интегрирован с порталом ArcGIS Enterprise, но при использовании потоковых сервисов администрирование обычно проще, когда ArcGIS Server не интегрирован.
  • На слои сервисов можно ссылаться, используя опцию Перейти к слою или указывая URL c помощью опции URL слоя сервиса в параметре Ссылка на тип слоя. Обе опции требуют, чтобы сначала было установлено зарегистрированное подключение к хранилищу данных.
  • Возможность Опубликовать потоковый сервис, который доступен при настройке нового выходного оператора, используется для публикации потокового сервиса непосредственно из GeoEvent Manager.
  • При публикации потоковых сервисов следует использовать подключение к серверу, зарегистрированное с GeoEvent Server в качестве хранилища данных по умолчанию.
  • Чтобы опубликовать потоковый сервис, у вас должно быть существующее Определение GeoEvent, схема которого отражает поля, которые должны быть в потоковом сервисе.
  • WebSocket, лежащий в основе потокового сервиса, работает как часть ArcGIS GeoEvent Server, а не ArcGIS Enterprise. При публикации потокового сервиса с помощью подключения к серверу по умолчанию, и когда URL-адрес этого подключения к серверу отражает конечную точку портала ArcGIS Enterprise, механизм публикации сервиса будет обрабатывать публикацию потокового сервиса на компьютере, на котором запущен ArcGIS GeoEvent Server. Опубликованный сервис будет зарегистрирован на портале ArcGIS Enterprise, как элемент ресурса.
  • В соответствии с рекомендациями по разделению рабочих процессов рекомендуется развертывать ArcGIS Enterprise на серверном компьютере, отдельном от компьютера, на котором запускается ArcGIS GeoEvent Server. Подключение сервера по умолчанию в GeoEvent Server содержит информацию, которая помогает определить компьютер, подходящий для публикации потокового сервиса.

Параметры

ПараметрОписание

Имя

Описательное имя выходного коннектора, используемое для ссылки в GeoEvent Manager.

Зарегистрированное подключение к серверу

Подключение ArcGIS Server или ArcGIS Enterprise, зарегистрированное на GeoEvent Server как хранилище данных.

Примечание:

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

Ссылка на тип сервиса

Задает опции для ссылки на сервис

  • Перейти к сервису - указать ссылку на сервис, найдя его в папках зарегистрированного хранилища данных.
  • URL сервиса - указать ссылку на сервис, задав URL опубликованного сервиса.

Папка

(Условия)

Папка с сервисами ArcGIS Server находится в ArcGIS REST Services Directory.

В настоящее время потоковые сервисы не могут быть опубликованы в папку элементов ресурсов портала ArcGIS Enterprise. При интеграции с порталом ArcGIS Enterprise следует публиковать потовые сервисы в Корневую папку.

Показывается, когда для параметра Ссылка на тип сервиса установлено Перейти к сервису, и скрыт, когда установлено URL сервиса.

Имя потокового сервиса

(Условия)

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

Показывается, когда для параметра Ссылка на тип сервиса установлено Перейти к сервису, и скрыт, когда установлено URL сервиса.

URL-адрес сервиса

(Условия)

URL потокового сервиса.

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

Показывается, когда для параметра Ссылка на тип сервиса установлено URL сервиса, и скрыт, когда установлено Перейти к сервису.

Интервал обновления (секунд)

Определяет интервал (в секундах), в течение которого выходной оператор подключения сбрасывает кэш обработанных записей событий, отправляя их указанному потоковому сервису в виде записей объектов. Значение по умолчанию составляет 0.1 секунды, это значит, что данные из обработанных записей событий будут кэшироваться и кэш будет регулярно сбрасываться с частотой десять раз в секунду.

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

Форматированный JSON

Указывает, будет ли строка объекта JSON иметь отступ с пробелом и форматированием новой строки. Этот JSON, иногда называемый PJSON, обычно подходит только при записи в системный файл, содержимое которого может быть просмотрено в текстовом редакторе. По умолчанию Нет.

  • Да – объект JSON будет отформатирован (подготовлен).
  • Нет – объект JSON не будет отформатирован.

Форсировать уникальный TrackID

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

Примечание:

Этот параметр сейчас не внедрен в GeoEvent Server и нужно оставить для него значение по умолчанию Нет. См. Факторы и ограничения.

Советы и ограничения

Был добавлен параметр Форсировать уникальный TrackID, предназначенное для предоставления информации подписывающимся клиентским приложениям, позволяя изменить их поведение от простого приемника записи объекта на тот, который позволяет обновлять запись объекта. Если для параметра задано значение по умолчанию, Нет, то клиенты, подписанные на трансляцию потокового сервиса, будут воспринимать каждую запись объекта как новое наблюдение. Общее поведение будет имитировать рабочий процесс добавления объекта, где для каждой трансляции записи объекта отображается новая запись объекта. Если же для параметра Форсировать уникальный TrackID задано значение Да, то поведение изменится, имитируя обновление рабочего процесса объекта, где позиция и атрибуты последней записи объекта могут обновляться по мере того, как новые записи объекта транслируются потоковым сервисом.

На практике не важно, как будет задан параметр Форсировать уникальный TrackID. Изменение значения этого параметра не поменяет спецификацию JSON опубликованного потокового сервиса. Веб-карты ArcGIS Enterprise и ArcGIS Online для StreamLayer в настоящее время используют trackIdField, указанное для потокового сервиса, которое можно найти в спецификации timeInfo сервиса, чтобы управлять тем, будет ли потоковый слой отображать новые записи объектов при каждой трансляции записи объекта или по мере трансляции новых записей он будет обновлять ранее полученные записи объектов. В картографических приложениях, созданных с помощью ArcGIS API for JavaScript, можно выбрать, имитировать ли такое же поведение, либо добавить какое-либо другое.

Рекомендуется для параметра Форсировать уникальный TrackID задать значение по умолчанию Нет и добавить объект или обновить поведение объектов, чтобы оно управлялось атрибутивным полем, чье значение может использоваться в качестве уникального идентификатора сенсора или отслеживаемого устройства.

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