0

私はWSO2タスクの実行を見てきましたが、タスク実行の簡単なスケジュール(たとえば、cronのようなスケジュールを使用)を設定できるようです。ただし、クラスターでタスクが各ノードで1回ではなく、クラスターごとに1回だけスケジュールされるようにするにはどうすればよいですか?

4

2 に答える 2

1

これは、WSO2ESBスケジュールタスクの「pinnedServers」属性を使用して実現できます。

スケジュールされたタスクでは、スケジュールされたタスクを作成するときにpinnedServers属性が表示されます。

このpinnedServers属性の目的は、クラスター化された環境でのスケジュールされたタスクの展開を制限することです。

スケジュールされたタスクを展開するクラスター環境で、WSO2 ESBインスタンスのホスト名のリスト(「、」で区切る)を指定できます。スケジュールされたタスクは、それらのWSO2ESBインスタンスにのみ展開されます。

したがって、この場合、クラスター環境内のWSO2 ESBインスタンスの1つのホスト名を指定でき、スケジュールされたタスクはそのWSO2 ESBインスタンスにのみデプロイされるため、WSO2ESBクラスターごとに1回だけデプロイされます。

WSO2ESBインスタンスのaxis2.xmlの「SynapseConfig.ServerName」パラメーターをそれぞれのホスト名で変更してください。

例えば:

<parameter locked="false" name="SynapseConfig.ServerName">host1.wso2.org</parameter>

よろしくお願いいたします。

ハルシャナ

于 2012-12-01T11:50:17.260 に答える