アクティブキュー

  ワークキュー

アクティブキューとは、

Blue Prism製品には、セッション内でキューに入れ、事前定義された順序で作業できるようにするためのワークキューがあります。
セッションは、従来のセッション管理モデルを使用し、処理を行うケースについてワークキューにポーリングを行うリソースで開始します。これらのセッションは、コントロールルームで手動により開始するか、Blue Prismサーバーインスタンスで実行するスケジューラーサービスで開始します。
アクティブキューは、キューを処理するセッションを管理する代替メカニズムを導入します。これはワークキューとセッション間の密接な関連付けを作成することにより実現されます。

なるほど、さっぱり分かりませんw
実際に使ってみましょう。
詰まるところ「アクティブキュー」とは、キューを起点にプロセスをセッション実行させる仕組みと思っておけば良さそうです。
なので、キューを使わないプロセスの場合はアクティブキューの恩恵を受けることができませんw

アクティブキューを使ってみる

所定のフォルダからファイル一覧を取得して、それらをキュー登録するだけのプロセスを用意します。(プロセス名「交通費精算_キュー登録」)
実験のため、あえてSleepを10秒入れておきます。

プロセスを用意できたら、今度はシステムタブ→ワークフロー→ワークキューを選びます。
そして、先ほどのプロセスで使っているキューを選択し、アクティブキューのチェックボックスにチェックを入れます。

「割り当てられたプロセス」は、「交通費精算_キュー登録」を選択します。
余談ですが、今回アクティブキュー化するのは「交通費精算_ファイル名キュー」というキューなのですが、このキューを使っているプロセスのみ抽出したリストを出してくれるとより親切だなぁと思いましたw

「割り当てられたリソースグループ」とは、今回でいうと「交通費精算_キュー登録」プロセスを稼働させるランタイムリソース(のグループ)のことです。
ランタイムリソースとは、コントロールタブのリソースパネルに出てる端末群のことですね。

リソースグループの設定は、システムタブ→リソース→管理でできます。
今回は「デフォルト」グループを選択します。

ここまで設定できたら、アクティブキューが使えます。
コントロールタブ→アクティブキューより、「交通費精算_ファイル名キュー」を選択します。
「ターゲットリソース」がさっきの「デフォルト」グループに登録されているリソース数、「アクティブセッション」が実行中のセッション数です。

ここで、「ターゲットリソース」を「1」にしてみましょう。
すると、アクティブセッションが1となり、「交通費精算_キュー登録」プロセスが実行されます。

プロセス実行完了後、以下のようにキューが登録されていることが分かります

表示されたキューデータは、通常のワークキューの操作と同じく、例外マークやリトライなどができます。

「ターゲットリソース」は、リソースグループに登録されているリソース数の上限まで設定可能です。つまり、「2」と設定すると2台のリソースがプロセス実行します。
「利用可能なリソース」が「0」なので、これ以上リソースにプロセスを割り振ることはできません。

アクティブキューの使い道

使い方は分かったけど、「で、結局これ何に使うの?」となりますw

パッと思いつくところでは、開発がラクになる、かもしれません(←おい)コントロールルームでリソースにD&Dする手間がかからないのは地味にありがたい。
開発時には、自端末以外に実際に運用時に使うランタイムリソースでの動作確認が必須です。なので、空いているリソースを狙ってD&Dする時間もバカにできず…。そういう意味ではありがたい機能かもしれません。

あと、1プロセスに複数のキューに対して登録を行っている場合、アクティブキューの設定はどうなるのか?など、検証したいことはまだありますが、追々調べることにします。

LEAVE A COMMENT

CAPTCHA