Интеграция
SMath Studio для организаций, при наличии соответствующей лицензии, поддерживает интеграцию с другими приложениями путём предоставления сервиса вычислений. Сервис вычислений - это процесс, который может быть запущен вызывающим приложением для немедленного выполнения вычислений. Поддерживается запуск нескольких сервисов вычислений одновременно.
Важно понимать, что сервис вычислений не прописывается в операционной системе как сервис, а его жизненный цикл полностью зависит от вызывающего приложения. Для обеспечения максимальной простоты взаимодействия с сервисом вычислений для сторонних разработчиков вместе с SMath Studio для организаций поставляется и удобный API в виде файла в установочной директории программы:
SMath.UI.Service.Api.dll
В ОС Windows во время установки дистрибутива программы библиотека API сервиса вычислений регистрируется для взаимодействия с COM, что даёт возможность реализовать интеграцию со SMath Studio практически любому внешнему приложению.
Примеры использования API сервиса вычислений SMath Studio для разных языков программирования можно найти в открытом SVN репозитории: https://smath.com/svn/public/integration.
Жизненный цикл сервиса вычислений
С помощью предоставляемого API работа с сервисом вычислений делится на следующие шаги:
- Запуск сервиса вычислений с указанием используемого порта.
- В момент запуска процесса происходит загрузка компонентов приложения, что может занаять несколько секунд, в зависимости от характеристик и производительности оборудования, а также от количества установленных в SMath Studio дополнений.
- Запросы на вычисление .sm файлов с указанием начальных данных и возвращением результатов вычислений.
- Вычисление расчётов происходит максимально быстро, т.к. компоненты приложения уже загружены в памяти и готовы к выполнению запросов.
- Завершение процесса сервиса вычислений.
- По завершению сервиса вычислений его процесс выгружается из памяти и более не ожидает взаимодействия с внешними приложениями.