В июле состоялся релиз интеграционной платформы InterSystems Ensemble 2015.2. В этой статье обзор основных улучшений 2015.2 и 2015.1.
Главное: поддержка push-уведомлений для iOS и Google-устройств, оптимизация архитектуры баз данных для Ensemble продукций, оптимизация «сквозных» (pass-through inproc) операций.
В Ensemble 2015.1 реализована поддержка push notifications для мобильных устройств. Это позволяет продукции Ensemble отправлять уведомления iOS и Android устройствам. При разработке Ensemble решения не нужно заботиться, сколько устройств получит уведомления и какие у них ОС. Реализована поддержка следующих протоколов:
Для использования понадобятся:
В этом релизе появились некоторые изменения в архитектуре баз данных для области продукции Ensemble.
Во-первых, появились отдельные базы для кода и данных: для кода появляется специальная база PRODUCTION_SECONDARY. Это упрощает обновление версий и делает более логичной поставку и поддержку решений на Ensemble. Разумеется, и раньше можно было делить базы на базу кода и данных, но теперь это делается автоматически и является предпочтительным сценарием.
Во-вторых, для каждой продукции теперь создается своя собственная временная база PRODUCTION_TEMP — аналог CACHETEMP. Это упрощает менеджмент с временными базами «если что-то пошло не так» — можно, например, удалить временную базу продукции и не беспокоиться и не беспокоить все остальные продукции, которые раньше все вместе использовали один CACHETEMP. При обновлении Ensemble продукции автоматически начнут использовать собственную временную базу вместо CACHETEMP. Подробности.
Сквозные операции (Pass-Through Generic InProc Operations) — такие, которым не нужна дополнительная логика обработки и которые можно сразу перенаправить от входящих бизнес-служб в исходящие бизнес-операции. В новой версии для таких «сквозных» вызовов можно не генерировать хранимые сообщения, что существенно повышает быстродействие (как впрочем и усложняет отладку). Реализуются сквозные операции с помощью классов: EnsLib.HTTP.GenericOperationInProc, EnsLib.REST.GenericOperationInProc, EnsLib.SOAP.GenericOperationInProc. Подробнее.
В Ensemble 2015.1 реализована поддержка stateless calls to Java, что позволяет уменьшить потери на создании и поддержке соединений. Подробнее.
В 2015.1 появились улучшения в Enteriprise мониторинге и мониторинге продукции. Enterprise мониторинг теперь показывает статус продукций, исполняемых в разных областях и разных серверах Ensemble. Можно смотреть:
В мониторинге продукций появились фильтрация и сортировка компонентов продукции. Об этих и других улучшениях читайте полную версию Ensemble Release Notes 2015.1 и 2015.2.
Спасибо за внимание, готовы ответить на ваши вопросы.
Главное: поддержка push-уведомлений для iOS и Google-устройств, оптимизация архитектуры баз данных для Ensemble продукций, оптимизация «сквозных» (pass-through inproc) операций.
В Ensemble 2015.1 реализована поддержка push notifications для мобильных устройств. Это позволяет продукции Ensemble отправлять уведомления iOS и Android устройствам. При разработке Ensemble решения не нужно заботиться, сколько устройств получит уведомления и какие у них ОС. Реализована поддержка следующих протоколов:
- iOS Push Notifications (APNS)
- Google Cloud Messaging (GCM).
Для использования понадобятся:
- EnsLib.PushNotifications.AppService — бизнес-служба, которая получает уведомления из Cache кода, исполняемого вне продукции Ensemble. Обычно эта служба шлет все уведомления в Identity Manager.
- EnsLib.PushNotifications.IdentityManager — пакет бизнес процесса Ensemble, который поддерживает таблицу соответствия пользователя, приложения и связанных с ними устройств. Identity Manager позволяет отправить сообщение пользователю не заботясь о количестве и типах устройств пользователя. Identity Manager получает сообщения от других компонентов продукции Ensemble и в типичных сценариях отправляет их в маршрутизатор для дальнейшего разбора и отправки получателям посредством GCM и APNS бизнес-операций. Эти бизнес-операции настраиваются соответствующим образом для работы с необходимыми SSL-сертификатами.
- EnsLib.PushNotifications.APNS.Operation — бизнес-операция, которая отправляет уведомление на сервер iOS Push Notifications. Для работы бизнес-операции нужно написать реализацию %Net.PushNotifications.APNS класса. Для каждого iOS приложения потребуется специальный SSL-сертификат. Бизнес-операция поддерживает соединение с этим сервером с помощью этого сертификата.
- EnsLib.PushNotifications.GCM.Operation — бизнес-операция для отправки push-уведомлений на сервер Google Cloud Messaging. Для работы бизнес-операции нужно написать реализацию %Net.PushNotifications.GCM.
Улучшенное хранение данных для областей Ensemble
В этом релизе появились некоторые изменения в архитектуре баз данных для области продукции Ensemble.
Во-первых, появились отдельные базы для кода и данных: для кода появляется специальная база PRODUCTION_SECONDARY. Это упрощает обновление версий и делает более логичной поставку и поддержку решений на Ensemble. Разумеется, и раньше можно было делить базы на базу кода и данных, но теперь это делается автоматически и является предпочтительным сценарием.
Во-вторых, для каждой продукции теперь создается своя собственная временная база PRODUCTION_TEMP — аналог CACHETEMP. Это упрощает менеджмент с временными базами «если что-то пошло не так» — можно, например, удалить временную базу продукции и не беспокоиться и не беспокоить все остальные продукции, которые раньше все вместе использовали один CACHETEMP. При обновлении Ensemble продукции автоматически начнут использовать собственную временную базу вместо CACHETEMP. Подробности.
Оптимизация «сквозных» (Pass-through) операций
Сквозные операции (Pass-Through Generic InProc Operations) — такие, которым не нужна дополнительная логика обработки и которые можно сразу перенаправить от входящих бизнес-служб в исходящие бизнес-операции. В новой версии для таких «сквозных» вызовов можно не генерировать хранимые сообщения, что существенно повышает быстродействие (как впрочем и усложняет отладку). Реализуются сквозные операции с помощью классов: EnsLib.HTTP.GenericOperationInProc, EnsLib.REST.GenericOperationInProc, EnsLib.SOAP.GenericOperationInProc. Подробнее.
Stateless-вызовы в Java
В Ensemble 2015.1 реализована поддержка stateless calls to Java, что позволяет уменьшить потери на создании и поддержке соединений. Подробнее.
Улучшения мониторинга Ensemble
В 2015.1 появились улучшения в Enteriprise мониторинге и мониторинге продукции. Enterprise мониторинг теперь показывает статус продукций, исполняемых в разных областях и разных серверах Ensemble. Можно смотреть:
- статус обработки очередей сообщений относительно заданных критериев;
- гистограммы по статусам;
- дополнительная информация.
В мониторинге продукций появились фильтрация и сортировка компонентов продукции. Об этих и других улучшениях читайте полную версию Ensemble Release Notes 2015.1 и 2015.2.
Спасибо за внимание, готовы ответить на ваши вопросы.