Skip to main content
OData4 — это два HTTP-сервиса расширения: Для начала достаточно сервиса OData4 на обычной публикации базы. Сервис токенов публикуется отдельно — см. Публикация токенов.

Публикация из конфигуратора

Администрирование → Публикация на веб-сервере:
Администрирование → Публикация на веб-сервере

Администрирование → Публикация на веб-сервере

  1. Укажите имя публикации (оно станет частью адреса, base в примерах) и каталог.
  2. Включите «Публиковать HTTP-сервисы расширений по умолчанию».
  3. Нажмите «Опубликовать». На Windows конфигуратор должен быть запущен от имени администратора.
Вкладка «HTTP сервисы»: флажок для HTTP-сервисов расширений и кнопка «Опубликовать»

Вкладка «HTTP сервисы»: флажок для HTTP-сервисов расширений и кнопка «Опубликовать»

default.vrd

Те же настройки в файле публикации. Пример с явными параметрами сервиса OData4:
default.vrd
  • reuseSessions="autouse" — запросы попадают в уже подготовленный сеанс: модель данных и $metadata не строятся заново на каждый запрос;
  • sessionMaxAge="20" — сеанс живёт 20 секунд простоя;
  • poolSize — сколько сеансов держит пул; задавайте соразмерно числу одновременных клиентов.
Параметры сервиса в default.vrd перекрывают значения из конфигурации расширения (там тоже reuseSessions = AutoUse, sessionMaxAge = 20).

Проверка

Память рабочего процесса

Новый сеанс строит не всю модель, а только индекс наборов и описания тех наборов, к которым обращались. Полную модель строит только запрос $metadata: на время его построения процесс веб-сервера может занять ориентировочно 180–300 МБ на большой конфигурации. Модуль веб-сервера 1С не возвращает память операционной системе до завершения рабочего процесса (httpd или w3wp). Рекомендации:
  • держите poolSize соразмерным числу одновременных клиентов;
  • не публикуйте лишние объекты: состав публикации определяет размер модели и $metadata;
  • включите кэш $metadata между сеансами (по умолчанию включён), тогда новые сеансы берут готовый документ;
  • перезапускайте рабочий процесс веб-сервера по расписанию или по достижении предела памяти (MaxConnectionsPerChild у Apache, переработка пула у IIS).