Разработка бизнес-логики | Tdg

Версия:

2.x
Руководство разработчика Разработка бизнес-логики

Разработка бизнес-логики

В этой главе описывается реализация бизнес-логики в TDG.

Бизнес-логика реализуется в TDG с помощью пользовательского кода на Lua – скриптовом языке, который нативно поддерживается в Tarantool. Единица бизнес-логики – исполняемая Lua-функция, загруженная в TDG – является аналогом хранимой процедуры в СУБД.

TDG расширяет возможности Tarantool по работе с пользовательским кодом, упрощая разработку бизнес-логики. В частности, доступны следующие возможности:

  • загрузка пользовательского кода как части конфигурации TDG;

  • исполнение пользовательского кода на узлах TDG с ролью Runner – отдельно от хранилища данных.

  • автоматическая генерация API для вызова пользовательских функций извне;

  • автоматическая обработка входящих и исходящих данных с помощью input- и output-процессоров;

  • выполнение задач по расписанию.

  • собственные Lua-модули для работы с хранилищем TDG, доступа к базам данных (ODBC), работы с JSON и другие;

Lua-код, реализующий бизнес-логику решения TDG, можно разделить на следующие виды:

  • Сервис-функции (services) предназначены для вызова внешними системами или пользователями через API: GraphQL, REST API или iproto.

  • Процессоры входящих и исходящих данных (input processor и output processor) автоматически выполняют пользовательский код при поступлении нового объекта через выбранный коннектор или отправке в него.

  • Задачи (tasks) вызываются изнутри TDG вручную, либо автоматически с заданным интервалом, либо по расписанию.

Подробнее о возможностях реализации бизнес-логики рассказывается на страницах этого раздела.

Нашли ответ на свой вопрос?
Обратная связь