УСПОКОИТЕЛЬНЫЙ API использует модель ответа запроса Протокола передачи гипертекста (HTTP) для связи с MATLAB® Production Server™. Эта модель включает методы запроса, коды ответа, заголовки сообщения и тексты сообщений. УСПОКОИТЕЛЬНЫЙ API имеет следующие характеристики:
Методы HTTP — POST, GET и DELETE — формируют первичный режим из связи между клиент-сервером.
Уникальные Унифицированные идентификаторы ресурса (URIs) идентифицируют ресурсы, которые создает сервер.
Обменивайтесь сообщениями заголовки передают метаданные, такие как Тип контента запроса.
API поддерживает application/json
как Content-Type
HTTP заголовок.
УСПОКОИТЕЛЬНЫЙ API для выполнения функции MATLAB также поддерживает application/x-google-protobuf
как Content-Type
HTTP
через клиентский API Java® только.
Текст сообщения запроса содержит информацию, которая будет отправлена в сервер.
Если вы используете JSON в качестве формата сериализации данных, входные параметры к функции MATLAB, содержавшей в развернутом архиве, представляются в JSON и инкапсулируются в теле сообщения.
Если вы используете буферы протокола (protobuf) в сериализации данных, клиентская библиотека Java обеспечивает классы помощника, чтобы внутренне создать сообщения protobuf на основе первичного формата и возвращает соответствующий массив байтов. Используйте этот массив байтов в тексте сообщения запроса.
Текст сообщения ответа содержит информацию о запросе, таком как состояние или результаты.
Если вы используете protobuf в сериализации данных, клиентская библиотека Java предоставляет методы и классы, чтобы десериализовать protobuf ответы.
API поддерживает и синхронное и асинхронные режимы сервера.
Примеры и графика, которая следует за использованием JSON как формат сериализации данных.
УСПОКОИТЕЛЬНЫЙ API для выполнения функции MATLAB
Ввод | Цель |
---|---|
Синхронное выполнение (MATLAB Production Server) | Выполните синхронные запросы к серверу |
Асинхронное выполнение (MATLAB Production Server) | Выполните асинхронные запросы к серверу |
УСПОКОИТЕЛЬНЫЙ API для открытия сервера и диагностики
Ввод | Цель |
---|---|
Узнайте функции MATLAB, развернутые на сервере | |
Медицинский осмотр (MATLAB Production Server) | Проверяйте здоровье сервера |
В синхронном режиме, после того, как клиент отправляет запрос, сервер блокирует все дальнейшие запросы, пока это не завершило обработку исходного запроса. После того, как обработка завершена, сервер автоматически возвращает ответ клиенту.
УСПОКОИТЕЛЬНЫЕ вызовы API синхронного режима
Вызвать | Цель |
---|---|
POST синхронный запрос | Выполните синхронный запрос к серверу и ожидайте ответа |
Следующая диаграмма иллюстрирует, как УСПОКОИТЕЛЬНЫЙ API работает в синхронном режиме.
В этом примере показано, как использовать УСПОКОИТЕЛЬНЫЙ API и JSON путем обеспечения двух отдельных реализаций — одно использование JavaScript®
и другое использование Python®
. Когда вы выполняете этот пример, сервер возвращает список 25 разделенных от запятой значений. Этими значениями является выход развернутой функции MATLAB mymagic
, представленный в упорядоченном по столбцам формате. Код MATLAB для mymagic
функция следует.
function out = mymagic(in)
out = magic(in);
Для этого примера, чтобы запуститься, экземпляр MATLAB Production Server, содержащий развернутую функцию MATLAB mymagic
потребности запуститься. Для получения дополнительной информации о том, как создать развертываемый архив, смотрите, Создают Развертываемый Архив для MATLAB Production Server. Для получения дополнительной информации о подготовке сервера смотрите, Создают Сервер (MATLAB Production Server).
С реализацией JavaScript УСПОКОИТЕЛЬНОГО API вы включаете скрипт в <script> </script>
теги страницы HTML. Когда вы открываете эту страницу HTML в веб-браузере, сервер возвращает значения mymagic
функция. Обратите внимание на то, что сервер должен иметь CORS
позволенный для кода JavaScript работать. Для получения дополнительной информации о том, как включить CORS
, смотрите cors-allowed-origins
.
Код:
Этот пример использует Python 2.x. Если вы используете Python 3.x, необходимо изменить некоторые фрагменты кода.
Код:
Чтобы изучить, как развернуть функцию MATLAB на MATLAB Production Server и вызвать его с помощью УСПОКОИТЕЛЬНОГО API и JSON, смотрите, что Веб-Связь Оценивает Инструмент Используя JavaScript.
В асинхронном режиме клиент может отправить несколько запросов, и в каждом случае сервер отвечает путем создания нового ресурса и возврата уникального URI, соответствующего каждому запросу. URI инкапсулируется в теле сообщения ответа. Клиент может использовать URI, возвращенный сервером в целях запроса и получения результатов среди другого использования.
УСПОКОИТЕЛЬНЫЕ вызовы API асинхронного режима
Вызвать | Цель |
---|---|
POST асинхронный запрос | Выполните асинхронный запрос к серверу |
Представление GET асинхронного запроса | Просмотрите, как представлен асинхронный запрос, выполненный к серверу |
Набор GET запросов | Просмотрите набор запросов |
ПОЛУЧИТЕ информацию состояния | Получите информацию состояния запроса |
Результат GET запроса | Получите результаты запроса |
Запрос отмены POST | Отмените запрос |
Запрос DELETE | Удалите запрос |
Следующая диаграмма иллюстрирует, как УСПОКОИТЕЛЬНЫЙ API работает в асинхронном режиме. Диаграмма не покрывает все УСПОКОИТЕЛЬНЫЕ вызовы API. Для полного списка вызовов см. предыдущую таблицу.
В этом примере показано, как использовать УСПОКОИТЕЛЬНЫЙ API и JSON для асинхронного выполнения с помощью JavaScript. Когда вы выполняете этот пример, сервер возвращает список 100 разделенных от запятой значений. Этими значениями является выход развернутой функции MATLAB mymagic
, представленный в упорядоченном по столбцам формате. Код MATLAB для mymagic
функция следует.
function out = mymagic(in)
out = magic(in);
Для этого примера, чтобы запуститься, экземпляр MATLAB Production Server, содержащий развернутую функцию MATLAB mymagic
потребности запуститься. Для получения дополнительной информации о том, как создать развертываемый архив, смотрите, Создают Развертываемый Архив для MATLAB Production Server. Для получения дополнительной информации о подготовке сервера смотрите, Создают Сервер (MATLAB Production Server).
Код:
Используйте сервис открытия узнать о функциях MATLAB, что вы развертываетесь к серверу. Сервис открытия возвращает информацию о развернутых функциях MATLAB как объект JSON. Объект является многоуровневой вложенной структурой, и на высоком уровне отображает версию схемы открытия и список развернутых архивов. Каждый архив содержит информацию о развернутых функциях MATLAB и их функциональных подписях. Для получения дополнительной информации об объекте JSON, см. Объект Ответа JSON.
Чтобы использовать сервис открытия, необходимо включить сервис открытия на сервер путем установки --enable-discovery
свойство в main_config
конфигурационный файл сервера.
Чтобы получить полезную информацию при использовании сервиса открытия, необходимо включать файл JSON, содержащий функциональные подписи функций MATLAB, которые вы хотите развернуть при создании развертываемого архива. Для получения информации о том, как создать развертываемый архив, смотрите, Создают Развертываемый Архив для MATLAB Production Server. Для получения информации о создании файла JSON, содержащего функциональные подписи, смотрите Подписи функции MATLAB в JSON.
Вызовите сервис открытия с помощью метода GET HTTP.
УСПОКОИТЕЛЬНЫЕ вызовы API сервиса открытия
Вызвать | Цель |
---|---|
Информация для поиска GET | Узнайте функции MATLAB, развернутые на сервере |
Ответ с сервера является объектом JSON.
Используйте API медицинский осмотра, чтобы определить, имеет ли сервер допустимую лицензию и может обработать запросы HTTP. Медицинский осмотр классифицирует сервер как здоровый или вредный для здоровья в зависимости от того, имеет ли сервер допустимую лицензию и может связаться с сетевым менеджером лицензий. Для получения дополнительной информации о лицензировании смотрите, Управляют Лицензиями на MATLAB Production Server (MATLAB Production Server).
Здоровье сервера | Код статуса ответа HTTP | Описание |
---|---|---|
Здоровый |
200 OK | Сервер здоров, когда это находится в одном из следующих состояний:
|
Вредный для здоровья |
503 Health Check Failed | Сервер потерял связь с сетевым менеджером лицензий сроком на время, превысив льготный период. Обработка запросов была приостановлена, но сервер активно пытается восстановить связь с сетевым менеджером лицензий. Обработка запросов возобновляется, может ли разъединение восстановить связь с менеджером лицензий. |
Если медицинский осмотр успешен, ответ с сервера является объектом JSON, указывающим, что сервер здоров.
{ "status": "ok" }
Не пройдено медицинский осмотр указывает, что сервер недоступен, чтобы обработать запросы HTTP, но не предоставляет дополнительную информацию о причине отказа в органе по ответу. Администраторы сервера могут использовать mps-status
получить подробную информацию о состоянии сервера. Необходимо быть в той же системе как сервер, чтобы запустить mps-status
.
УСПОКОИТЕЛЬНЫЙ вызов API медицинский осмотра
Вызвать | Цель |
---|---|
Здоровье сервера GET | Получите информацию о полном рабочем состоянии сервера |