Execution Mode の使用

Scripting Module の ​[Execution Mode (実行モード)]​ 項目を使用してスクリプトを自動的にコンパイルするか強制的に解釈するかを判断します。

次のモードの項目を設定します。

  • AUTO
    コンパイルが可能で初期化中に正常に行われる場合は、スクリプトのコンパイル済みバージョンが使用されます。このモードでは、解釈済みの実行に切り替える必要があるかどうかを判断するためにスクリプトのコンテンツの動的分析が実行されません。たとえば、スクリプトに動的にする必要があるハードコードされたパラメーターまたはローカル値が含まれている場合、​AUTO​ モードではこの状況が検出されず、コンパイルを選択する場合があるため、結果としてこれらの値が失われます。

    そのため、​AUTO​ モードはコンパイル中に失われる場合があるローカル変数への重大な連動関係がない場合のみ適しています。

  • INTERPRETED
    変数の保持に関連する問題が回避されます。

    INTERPRETED​ モードを使用すると、パフォーマンスが低下する場合があります。これは、スクリプトが 1 回だけコンパイルされるのではなく、実行ごとに解釈されるためです。このモードは本質的に効率が良くないため、パラメーターを明示的に受信するためにスクリプトを変更するのが適切でない場合に適しています。

次の XML 例では、​[Execution Mode (実行モード)]​ 項目 (​executionMode​) の設定を示しています。

<mule ...>
	<flow name="conn-flow" >
		<scripting:execute
engine="jruby" executionMode="INTERPRETED">
               <scripting:code>
				...
</scripting:code>
                ...
            </scripting:execute>

	</flow>
</mule>

関連情報