可用性の高いキュー処理
キューエントリの処理方法はメソッドサーバーの設定によって決まります。複数のバックグラウンドサーバーが稼働している場合には、これらのバックグラウンドメソッドサーバーにキューがどのように割り当てられているかが重要になります。
Windchill をインストールする際に、キューエントリを処理するためのバックグラウンドメソッドサーバーを作成するオプションがあります (システムの CPU やコアが十分である場合)。システムが小さすぎる場合や、バックグラウンドメソッドサーバーを作成するオプションを選択しなかった場合には、すべての処理がフォアグラウンドメソッドサーバーを通して実行されます。キューエントリの実行順序は、エントリを実行するキューのタイプ (スケジュール、プール、またはプロセス) によって決まります。メソッドサーバーを 1 つしか構成しないと、特殊なキュー処理を設定できません。ただし、スケーラブルな構成を実現するには、1 つ以上のバックグラウンドメソッドサーバーを構成する必要があります。
キューエントリの実行用に 1 台のバックグラウンドメソッドサーバーを構成すると、ユーザーが Windchill を操作しても、キューエントリの実行はその影響を受けません。キューエントリが実行される速度は、使用可能なメモリ容量とサーバーの速度によって異なります。バックグラウンドメソッドサーバーの全容量がキューエントリの処理に使用されると、キューの実行が遅くなる場合があります。また、何らかの理由でメソッドサーバーがオフラインになると、実行が完全に停止される可能性があります。
複数のバックグラウンドメソッドサーバーを設定すると、キューグループを複数のバックグラウンドメソッドサーバーに割り当てることができます。キューがキューグループに割り当てられると、可用性の高いキュー処理がサポートされ、複数のバックグラウンドメソッドサーバーでこのグループが実行されるように構成されます。このタイプの構成では、バックグラウンドメソッドサーバーがオフラインになった場合でもプロセスの処理は続行され、キューエントリがスケジュールされます。複数のバックグラウンドメソッドサーバーにプロセスキューが割り当てられると、実行できる権限が与えられるのは、一度に 1 台のサーバーだけです。実行すべきキューエントリが複数ある場合でも、この実行権限は 1 つのサーバーにしか存在しません。新しい作業が実行可能になると、この実行権限をサーバー間で移動することができます。
プールキューの場合、可用性の高い構成でプールキューグループを割り当てると、バックグラウンドメソッドサーバーがオフラインになってもキューエントリの処理を続行して、パフォーマンスを向上させることができます。パフォーマンスが向上するのは、プールキューによってキューエントリの同時実行が可能になるからです。プールキューに複数のキューエントリが存在する場合、キューエントリはキューが割り当てられている任意のバックグラウンドメソッドサーバーで実行することが可能であり、1 つのエントリの処理がほかのエントリの完了に依存することはなく、これらのキューの実行順序も保証されません。
複数のバックグラウンドメソッドサーバーに割り当てられたキューからのキューエントリを実行すると、タスクを最初に要求したバックグラウンドメソッドサーバーがキューエントリのタスクを処理します。タスクのリクエストが承認されると、キューが割り当てられているその他のバックグラウンドメソッドサーバーが同じキューエントリタスクの実行を要求しても、処理すべきタスクを見つけることができません。これによって、キューエントリは一度だけ実行されることが保証されます。
メソッドサーバーを 1 つだけ持つシステムや、1 つのフォアグラウンドおよび 1 つのバックグラウンドメソッドサーバーを持つシステムでは、可用性の高いキュー処理を構成することができません。
* 
キューが複数のバックグラウンドメソッドサーバーに割り当てられている場合、どのメソッドサーバーが対応するキューエントリを実行するかを予測できません。キューエントリに関する実行情報は、エントリタスクを実行したメソッドサーバーだけに記録される点に注意してください。したがって、可用性の高いキュー構成を使用しており、キューエントリの実行に関する問題をトラブルシューティングする場合には、構成に使用したすべてのメソッドサーバーのログを確認する必要があります。
可用性の高い構成にキューグループを設定するには、バックグラウンドメソッドサーバーの設定で説明するステップを実行してください。複数のバックグラウンドサーバーの起動コマンドに、可用性の高いキュー構成におけるキューグループ設定を指定するようにしてください。
これは役に立ちましたか?