2016-11-29 4 views
0

私はマルチインスタンスのヒューマンタスクサブプロセスを持つビジネスプロセスを持っています。基本的に、それはすべてがうまく実行されているタスクdone.Withシングルトン戦略を得るためにそれに署名する一つまたは多くの人が従業員ここ leave approval business processSpringフレームワークでJbpm 6.4で "プロセスインスタンスごとの"ランタイム戦略を使用する方法

を残す従業員が1人以上の人のための休暇の申請を承認するために関与することができる承認プロセスを残しています私はそれを "プロセスインスタンスごとの"ランタイム戦略に移行したいと思っています。そのために私は

this.kieSession = this.runtimeManager.getRuntimeEngine(ProcessInstanceIdContext.get()).getKieSession(); 

コード

次のコードを変更して、コメントを追加し、私は疑問/質問に、次のしている: -

  1. がキエセッションの作成は、プロセスの開始時にのみ必要とされていますか?

  2. 今後休暇に署名する際に、kie sessionにアクセスするためのprocess_instance_idを抽出するにはどうすればよいですか?

  3. 上記の問題を解決する最良の方法はありますか?

  4. "プロセスごとのインスタンス"ランタイム戦略で十分ですか、 "要求ごとの"ランタイム戦略に移行する必要がありますか?

  5. 「シングルトン」と「プロセスインスタンスごと」の実行時戦略の正確な違いは、パフォーマンスとリソース使用量の点で違いますか?

  6. 約200人のユーザーが同時にアプリケーションにアクセスする場合、どちらを使用しますか?ここで

答えて

0

の答えです:クライアントアプリケーションがランタイムと対話することができるように

  1. KieSessionsはKieContainerから作成されます。 1つのプロセスだけを開始するためにセッションを使用する場合は、それも問題ありません。セッションを閉じると、プロセスはkieサーバー(kie実行サーバー)で実行され続けます
  2. すべてのinstancessは、GAVグループ、成果物、およびバージョンで識別される1つのモデル(プロセス定義)に対して要求できます。最近のKIEバージョンでは、すべてのデプロイメントが一意の識別子を持つため、これは単純化されています。
  3. ランタイム戦略は、プロセスの表示方法と、それをモデリングする際に期待される機能とは関係ありません。私はあなたの説明でシングルトンにしておきます。
  4. プロセスごとおよび要求ごとの戦略は、ランタイムのインスタンス化方法の内部実行時プロパティです。このカプセル化はあなたの機能性を変えるべきではありません
  5. シングルトンランタイムは1つの実行可能ファイルであり、すべてのインスタンスの独立した実行を持っているため、一部のインスタンスが失敗した場合(メモリ不足またはその他の技術的問題が発生した場合)
  6. 同時ユーザーによる人間のユーザーのタスクへのアクセスは、一度に1人のユーザーしかタスクを要求できないため、奇妙な問題です。

私はあなたの理解を少し明るくしたいと思っています。

乾杯

関連する問題