Каталог решений - АИТП. Подсистема взаимодействия с рабочими серверами OneScript

АИТП. Подсистема взаимодействия с рабочими серверами OneScript

АИТП. Подсистема взаимодействия с рабочими серверами OneScript

В наличии

В статье описан механизм взаимодействия конфигурации АИТП с рабочими серверами OneScript.

Категория:

Описание

Введение

Ввиду ограниченных штатных возможностей взаимодействия платформы 1С:Предприятие с другими системами, рабочие сервера на основе web-приложения OneScript, играют ключевую роль в выполнении задач, которые не могут быть выполнены средствами платформы.

Таким образом, целью настоящей статьи является знакомство с возможностями конфигурации АИТП (проект на GitHub), в части выполнения задач с использованием рабочих серверов OneScript.

Системные требования

Версия платформы не ниже 8.3.10.2252

Версия конфигурации не ниже 0.4.10.61

Рабочий сервер OneScript

Рабочий сервер OneScript – это кроссплатформенное web-приложение, созданное на основе каркасной конфигурации, и предназначенное для выполнения фрагментов кода или вызова методов в среде OneScript. Готовые к развртыванию файлы web-приложения расположены в макете РабочийСерверOneScriptWebПриложениеАИТП.  С примером методики развертывания можно ознакомиться в этой статье.

Основные возможности

Рабочий сервер содержит два http-сервиса (runscript.os и callmethod.os), которые предоставляют API, позволяющее выполнять соответственно фрагменты кода (скрипты) OneScript, вызывать методы, а также осуществлять асинхронное выполнение фрагментов кода.

Сервер содержит в своем составе библиотеку, позволяющую взаимодействовать с устройствами по протоколу SSH и SCP, а также библиотеку для взаимодействия с СУБД. В настоящее время поддерживаются СУБД MS SQL Server, PostgreSQL, а также MySQL. Это позволяет серверу эффективно взаимодействовать с устройствами и СУБД напрямую, как из ОС Windows, так и из ОС Linux.

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

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

Взаимодействие конфигурации с сервером

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

Взаимодействие конфигурации с рабочим сервером происходит по протоколу http(s) и сводится к отправке POST-запросов с соответствующими параметрами, с последующим получением результатов выполнения скрипта или вызова метода.

При асинхронном выполнении скрипта, после получения запроса, сервер создает и запускает фоновое задание, в котором выполняется необходимый Вам фрагмент кода. Затем, возвращает данные, идентифицирующие фоновое задание, данные результатов выполнения, а также рабочий сервер, на котором выполняется задание. Последний пункт особенно важен в случае развертывания фермы серверов, так как запрос на выполнение кода осуществляется на url кластера, а проверка активности фонового задания, а также получение результатов его выполнения, должны осуществляться посредством выполнения запросов к конкретному экземпляру web-приложения (ноде кластера). В качестве идентификатора экземпляра сервиса (ноды кластера) используется содержимое файла serviceurl, которое используется для поиска необходимого сервиса.

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

Общие замечания

Функционал взаимодействия с рабочими серверами OneScript оформлен в виде набора подсистем:

OneScriptАИТП – содержит реализацию функционала взаимодействия с рабочими серверами OneScript.

МониторингДоступностиСервисовOneScriptАИТП – содержит реализацию функционала по мониторингу доступности рабочих серверов.

УдалениеРезультатовЗаданийСервисовOneScriptАИТП – содержит реализацию функционала по “сборки мусора” на рабочих серверах.

ПользовательскийИнтерфейсOneScriptАИТП – содержит настройки пользовательского интерфейса подсистемы (см. рис. 1.).

Рисунок 1. Пользовательский интерфейс подсистемы.

 

has been added to your cart:
Оформление заказа