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