送信 REST および SOAP メッセージの execute() と executeAsync() のどちらかを選択するIssue <!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } Now Platform のスクリプト内で **RESTMessageV2** または **SOAPMessageV2** を使用する場合、呼び出しの実行には *execute()* と *executeAsync()* の 2 つのメソッドを使用できます。間違った方法を選択すると、特に MID サーバーのルーティングや大量のサービスコールが関係している場合、スレッドのブロック、インスタンスの不安定性、または予期しないスクリプト実行が発生する可能性があります。この記事では、要求タイプ、応答処理要件、およびプラットフォーム構成に基づいて適切な方法を選択するための一般的なガイドラインを提供します。 Release<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } サポートされているすべてのバージョン Resolution<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } execute() と executeAsync() の比較 スクリプト内で RESTMessageV2 または SOAPMessageV2 を使用している場合、呼び出しの実行に次の 2 つの方法があることにお気づきかもしれません。 execute():このメソッドは呼び出しを同期的に行います。スクリプトを実行すると、呼び出しが完了するまで先に進まず待機します。タイムアウトを非常に短く設定するのでない限り、通常、このメソッドは推奨されていません。executeAsync():このメソッドは呼び出しを非同期的に行います。スクリプトを実行すると、呼び出しの完了を待たずに実行を継続します。スクリプトの残りの処理が、呼び出しの完了後に実行されることは保証されていません。 execute() を使用するケースと使用時の要検討事項: このメソッドは、非常に高速なサービスの呼び出しにのみ使用してください。サービスがどれほど高速であっても、大量に呼び出すべきではありません。execute はタイムアウトが非常に短い場合にのみ使用します。他の場合に使用すると、インスタンスを停止させる可能性があります。ここでは、glide.http.timeout および glide.http.connection_timeout という 2 つのプロパティに注目してください。デフォルトの状態 (プロパティテーブルにプロパティが設定されていない) において、これらはそれぞれ 175 秒と 10 秒に設定されています。通常、要求が MID を経由する必要がある場合は、このメソッドを使用しないでください。MID 要求は、最初に非同期キューである ECC キューを経由する必要があります。スレッドは、要求自体によってブロックされるだけでなく、MID サーバーからインスタンスへの応答を待つ間も占有されます。MID が関係している場合は、センサービジネスルールにより非同期呼び出しを使用することを強くお勧めします (下の例を参照)。 executeAsync() を使用するケースと使用時の要検討事項: 応答を必要としない場合は、executeAsync(fire and forget)の使用をお勧めします。要求が非常に大きい場合や、完了までに長時間かかる可能性がある場合にも適しています。応答が必要な場合は、ecc_queue からの応答を監視するセンサービジネスルールを設定できます。通常は、可能な限り executeAsync を使用することをお勧めします。waitForResponse() を executeAsync() に続けて呼び出すと、このメソッドの動作は基本的に、シンプルな execute() と同様になります。そのため、使用する際は、待機時間を非常に短く設定する必要があります。 ファイアアンドフォーゲットでない場合に execute() を executeAsync() に切り替える方法: execute() を使用するスクリプトは、多くの場合以下のようになります。 executeAsync を使用するように変更するには、ブロック C を、非同期メソッドの応答を処理する ECC Queue 上のビジネスルールへ移動します。 executeAsync() を使用した新しいスクリプト: 新しいセンサービジネスルールのスクリプト (SOAP の参考として Process Get Stock Quote ビジネスルールを参照) このような構成にすると、長時間実行される可能性のあるサービスの完了を待つためだけにスレッドが占有されなくなるため、インスタンスにとってはるかに安全です。 Related Links<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } 注: 最新情報については、「 RESTMessageV2 および SOAPMessageV2 を参照してください。