Вводная часть
Кросс-языковой публичный API в Симплайт 5 — это универсальный интерфейс взаимодействия со SCADA-сервером системы, построенный на основе gRPC и позволяющий выполнять программные запросы из внешних приложений независимо от используемого языка программирования, а также решать задачи разработки драйверов, интеграции с внешними системами, анализа данных и применения моделей машинного обучения.
API доступен из различных сред разработки и поддерживает языки программирования C++, Python, C#, Java, JavaScript, Go и др. благодаря генерации клиентского кода на основе файлов .proto — единого контракта между сервером и клиентом.
Информация
В настоящее время API поддерживает только язык программирования Python.
gRPC (Remote Procedure Call, удалённый вызов процедур) — это фреймворк удаленного вызова процедур, обеспечивающий коммуникацию между компонентами распределенных систем. Он использует HTTP/2 и буферы протоколов (protobuf) для сериализации данных. Как и любая RPC-система, gRPC включает сервер, определяющий доступные методы и их ответы, и клиент, вызывающий эти методы.
gRPC-взаимодействие позволяет обращаться к ядру сервера с высокой скоростью и предсказуемой задержкой, сопоставимой с выполнением кода внутри самого сервера.