---
metadata:
  - name: generator
    content: Diplodoc Platform v5.39.1
alternate:
  - https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/dg/concepts/remote-object-manager/about.md
  - https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/dg/concepts/remote-object-manager/about.md
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.com/dev/jsapi-v2-1/doc/ru/llms.txt

# RemoteObjectManager

[RemoteObjectManager](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/RemoteObjectManager.md) работает по такому же принципу, что и [LoadingObjectManager](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/dg/concepts/loading-object-manager/about.md). При отображении объектов он загружает с сервера только необходимые данные, что позволяет существенно уменьшить объем трафика. Отличие от `LoadingObjectManager` заключается в том, что `RemoteObjectManager` сам не кластеризует объекты, но он может использовать результаты серверной кластеризации данных.

{% note info %}

В [RemoteObjectManager](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/RemoteObjectManager.md) отсутствует возможность перетаскивать объекты, то есть опция [draggable](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/GeoObject.md#param-options.draggable) не поддерживается. Объекты отображаются только в центральном мире и не перепрыгивают при драге карты.

Также не поддерживается режим редактирования объектов.

{% endnote %}

`RemoteObjectManager` принимает на вход JSON-описание объектов — меток, _кластеров_, кругов и других объектов. Описание должно содержать координаты и идентификаторы объектов, информацию об их геометрии, а также свойства, например содержимое балунов. На основе JSON-описания менеджер создаст _оверлеи_ объектов (их визуальное представление) и отобразит их на карте.

## Принцип работы с RemoteObjectManager {#section_ht5_mqp_r1b}

При создании менеджера разработчик указывает [шаблон URL](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/dg/concepts/remote-object-manager/frontend.md#create), в соответствии с которым менеджер будет формировать запросы к серверу за необходимыми данными. Менеджер будет запрашивать данные только для тех тайлов, которые попадают в видимую область карты. Данные будут загружены для всего тайла, даже если этот тайл не попадает в видимую область целиком.

![](../../_images/remoteObjectManager.png)

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

Каждый раз при изменении уровня масштабирования карты менеджер повторно запрашивает у сервера данные для всей видимой области. Дело в том, что `RemoteObjectManager` настроен таким образом, чтобы оптимально отображать результаты серверной кластеризации. Менеджер не производит какой-либо обработки данных на стороне клиента — он отображает только то, что получает в запросе от сервера. Если на сервере используется кластеризация объектов, для разных уровней масштабирования в запросе могут приходить данные разных объектов (см. рисунок ниже). По этой причине при изменении уровня масштабирования менеджер запрашивает данные заново, даже если они уже были загружены ранее на другом масштабе.

![](../../_images/change_zoom.png)

{% note info %}

Если для разных уровней масштабирования приходят объекты с одним и тем же id, то на стороне клиента их метки не перерисовываются.

{% endnote %}

Менеджер и сервер обмениваются данными в формате [JSONP](https://ru.wikipedia.org/wiki/JSONP). Это означает, что сервер должен возвращать данные, обернутые в callback-функцию. Разработчику необходимо самостоятельно реализовать серверную обработку данных, позаботившись о том, чтобы сервер возвращал данные в нужном формате.

На основе загруженных данных `RemoteObjectManager` создает оверлеи, которые затем добавляет на карту. Оверлеи — это визуальное представление объектов на карте. Для их обработки требуется меньшее количество ресурсов, чем для обработки геообъектов — экземпляров класса [GeoObject](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/GeoObject.md).

## Узнайте больше

- [Разработка серверной части](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/dg/concepts/remote-object-manager/backend.md)

- [Разработка клиентской части](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/dg/concepts/remote-object-manager/frontend.md)

- [Сравнительная таблица: ObjectManager, LoadingObjectManager и RemoteObjectManager](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/dg/concepts/many-objects.md#advantages)
