今回使うコンポーネント
| コンポーネント | アイコン・領域 | 用途 |
|---|---|---|
| Store | Object Storeにデータを格納 | |
| Retrieve | Object Storeからデータを取得 | |
Object Storeとは
Object Storeはアプリケーション内でデータを一時的または永続的に保存・取得するためのストレージ機能です。Muleアプリケーション自体はリクエストやトランザクション単位でデータを滞留しないのが基本なんですが、一時的な情報やアプリケーション間でのやり取りとしてObject Storeが活用されます。
Object Storeは大きく分けて2つあります。オンプレ環境またはMuleアプリ内で扱えるローカルObject StoreとMule 4のクラウド環境で使用するObject Store V2の2つです。前者はアプリの起動中は保持されますが、再起動で消えます(設定次第では残すこともできます)。後者は永続性がありますが、サイズや保持期間の考慮が必要となります。
実際に使ってみる
Mule(MuleSoft)における Object Store(オブジェクトストア) とは、
アプリケーション内でデータを一時的または永続的に保存・取得するためのストレージ機能です。
主に以下のような用途で使われます。
では実際に使ってみましょう。Object Storeから値を取り出すのはRetrieve、値を格納するのはStoreを使用します。フローはこのような形で作りました。
まず1回実行してみると、結果はこうなります。
Object Storeに値が格納されていないため、Default valueの0が適用されて、加算された結果となります。
再度実行してみると結果はこのようになります。
前の実行で1をObject Storeに格納したため、次回実行時にRetrieveから1を取り出して使用していることが分かります。
このようにObject Storeはイベントが異なる場合での情報の受け渡しをすることが可能になります。
Object Storeの使用用途
Object Storeの使い方が分かったところで、実際の使用用途を考えてみましょう。
- フロー間のパラメータの共有
- 最終実行日時や最新の採番数値などの管理
- トークンやセッション値などの短期的に格納を要するもの
- 一定期間のリクエスト数などAPI Rate Limit制御への対策
などといったものが挙げられます。情報を一時的に格納するだけでもかなり幅広く使えるので、使いこなせるようにしておきましょう。

コメント