Этот сервис платформы CloudHub появился в выпуске CloudHub R20 , в котором используются возможности Object Store от Mule . Каждое интеграционное приложение CloudHub имеет собственное хранилище, не требующее настройки. Это чрезвычайно упрощает реализацию двух очень важных сценариев интеграции:
- Сохранение токенов OAuth — все наши соединители с поддержкой OAuth могут хранить токены и восстанавливать их с помощью ObjectStores
- Сохранение состояния синхронизации — вашему приложению может потребоваться отслеживать синхронизацию последней записи, поэтому при следующей синхронизации она может возобновить работу с того места, где она остановилась
Кроме того, вы можете хранить любые другие данные, которые вы хотите в нем! Давайте более подробно рассмотрим эти сценарии.
Постоянные OAuth-токены
Для тех, кто использует какой-либо из наших коннекторов, поддерживающих OAuth, первый вопрос всегда заключается в том, как сохранять и восстанавливать токены OAuth в течение всего жизненного цикла приложения. Теперь это просто вопрос использования модуля Object Store, как описано в каждом соединителе . Более того, мы делаем это в Mule 3.3.1, чтобы управление токенами OAuth работало без дополнительных настроек.
Другой действительно распространенный вариант использования — сохранение состояния синхронизации. Например, предположим, что вы хотите синхронизировать только новые счета из вашей CRM в свою биллинговую систему. Вы можете отслеживать синхронизацию последнего счета и использовать его в поисковом запросе при синхронизации счетов.
Вот быстрый псевдо-пример:
<objectstore:config name="Objectstore" partition="default" doc:name="Objectstore"/> <flow name="PollForNewInvoices"> <poll frequency="10000"> <!-- Get the last invoice synced --> <objectstore:retrieve config-ref="Objectstore" key="lastInvoiceId" defaultValue-ref="#[-1]" doc:name="Get Last Invoice ID"/> </poll> <!-- search for invoices with an ID greater than lastInvoiceId --> <flow-ref name="GetUpdatedInvoices"/> <!-- Update the last invoice synced --> <objectstore:store config-ref="Objectstore" key="lastInvoiceId" value-ref="#[payload[payload.size() - 1].id]" overwrite="true" doc:name="Objectstore"/> </flow>
его путь, даже если вы обновите свою интеграцию, он возобновит с того места, где остановился.
Просмотр данных вашего приложения
Получив данные в хранилище объектов, вы можете легко просмотреть их, щелкнув вкладку «Данные приложения» при управлении приложением CloudHub. Отсюда вы сможете просматривать и искать ваши данные. Мы также добавим возможность редактировать и удалять данные в будущем.
Вы можете использовать ObjectStores для хранения любых данных (в определенных пределах ), используя модуль ObjectStore . Есть вещи, для которых вы хотели бы использовать это? Дайте нам знать об этом в комментариях!