2016-05-30 4 views
0

ForEachドロップレットがグローバルスコープを持っていて、スコープを要求していない理由を誰でも説明できますか?ATG Dynamoドロップレットスコープ

私は、この機能がリクエストスコープを持っている場合は、パフォーマンス(実際に多くのユーザーがいるアプリ)に比較して何を提供するのかを意味します。

+0

「[スコープ=グローバルではどういう意味ですか?」](http://stackoverflow.com/questions/18613691/what-does-it-mean-by-scope-global-in) -atg) – bated

答えて

4

コンポーネントに要求範囲がある場合、コンポーネントが要求されるたびに、このコンポーネントのインスタンス(オブジェクト)が作成されること(時間とメモリのリソース)を意味します。頻繁に要求されるほど、オブジェクトを作成するのに時間がかかります。一度に多くのユーザーの要求 - 一度に多くのオブジェクト。グローバルスコープコンポーネントは一度作成され、すべての要求と異なるユーザーが再利用できます。

For Eachスプラットはステートレスなので、一度に多くの異なるリクエストで使用することができます。したがって、リクエストのスコープを作成する理由はありません。

0

グローバルスコープとは、コンポーネントが1回だけ作成されることを意味します。液滴は、それらを使用し維持する方が簡単であるため、ステートレスでなければなりません。特定のケースでは、ForEachドロップレットのリクエストスコープを作成することは何もありません。新しいパラメータを渡して、ドロップレットを呼び出すたびに反復処理を行うことができるからです。一方、フォームハンドラは、ユーザーの要求を処理することを目的としているため、リクエストまたはセッションの範囲を持つ必要があります。ログインプロセス、注文を送信する。

関連する問題