リミッタ

リミッタを使用すると、返されるデータを制限したり、API の動作を制御したりできます。CA NFA API で利用できるリミッタは、以下のとおりです。
nfa1000
リミッタを使用すると、返されるデータを制限したり、API の動作を制御したりできます。CA NFA API で利用できるリミッタは、以下のとおりです。
NFA 10.0.7 以降、パフォーマンスを向上させるため、defaultPageSize および maxPageSize はそれぞれ 20 と 10000 に増加しました。
リミッタ
Description
defaultExpandTopLimit
10
展開された NavigationProperty のトップ 10 の値を表示します。
このリミッタを上書きするには、「システムのデフォルトのリミッタの上書き」を参照してください。
expandMaxTopLimit
2000
NavigationProperty に対して展開できる最大トップ制限が 2000 であることを示します。
requestTimeout
30
API からのデフォルトのリクエスト タイムアウトが 30 であることを示します。この値を超えると、リクエストは次のエラー メッセージを表示します。「Request has been accepted. Request timed out due to no response from the server (リクエストは受理されました。サーバからのレスポンスがないため、リクエストはタイムアウトしました)」。
このリミッタを上書きするには、「システムのデフォルトのリミッタの上書き」を参照してください。
maxRequestTimeout
120
API の最大リクエスト タイムアウトが 120 秒であることを示します。
requestThreadPoolCoreSize
10
デフォルトのリクエスト スレッド プール コア サイズが 10 秒であることを示します。
requestThreadPoolMaxSize
50
最大リクエスト スレッド プール コア サイズが 50 秒であることを示します。
defaultQueryTimeout
10
デフォルトの単一クエリ タイムアウト値が 10 秒であることを示します。この値を超えると、クエリ タイムアウト エラーが表示されます。
このリミッタを上書きするには、「システムのデフォルトのリミッタの上書き」を参照してください。
maxQueryTimeout
60
最大クエリ タイムアウト値が 60 秒であることを示します。
defaultPageSize
20
NFA 10.0.7 以降、defaultPageSize の制限は 20 に増加しました。アップグレードの場合、OData 設定ファイルで以前の値が保持されます。パフォーマンスを向上させるには、defaultPageSize の値を手動で更新する必要があります。
ページに表示されるデータのデフォルトの数が 20 であることを示します。
このリミッタを上書きするには、「システムのデフォルトのリミッタの上書き」を参照してください。
maxPageSize
10000
NFA 10.0.7 以降、maxPageSize の制限は 10000 に増加しました。アップグレードの場合、OData 設定ファイルで以前の値が保持されます。パフォーマンスを向上させるには、maxPageSize の値を手動で更新する必要があります。
1 ページに表示されるデータの最大数が 10000 であることを示します。
enableMultiTenancy
false
マルチテナンシーを有効または無効にできるかどうかを示します。
リミッタを使用して、以下の操作を実行できます。
システムのデフォルトのリミッタの読み取り
この API は、システムのデフォルトのリミッタとその値のリストを表示します。
リソース URL
http://<
nfa odata host
>:<
nfa odata port
>/odata/api/SystemDefaults
()
メソッド
GET
サンプル リクエスト
http://127.0.0.1:8981/odata/api/SystemDefaults()
サンプル レスポンス
{
"@odata.context": "$metadata#com.ca.nfa.odata.limiters",
"defaultExpandTopLimit": 10,
"expandMaxTopLimit": 10,
"requestTimeout": 30,
"maxRequestTimeout": 120,
"requestThreadPoolCoreSize": 10,
"requestThreadPoolMaxSize": 50,
"defaultQueryTimeout": 10,
"maxQueryTimeout": 60,
"defaultPageSize": 10,
"maxPageSize": 1000
"enableMultiTenancy": false
}
システムのデフォルトのリミッタの更新
すべての API について、アプリケーション レベルでシステムのデフォルトのリミッタ値を更新できます。com.ca.nfa.odata.ODataLimiters.cfg ファイルを探し、必要に応じてシステムのデフォルトのリミッタ値を更新します。
更新した値は、再起動なしでシステムに表示されます。com.ca.nfa.odata.ODataLimiters.cfg ファイルで値を更新すると、その値がすべての API に対する新しいデフォルト値と見なされます。
システムのデフォルトのリミッタの上書き
以下のリミッタを上書きできます。
  • defaultExpandTopLimit
    $expand の $top システム クエリ パラメータを使用して、このパラメータを上書きできます。
    リソース URIL
    http://<
    nfa odata host
    >:<
    nfa odata port
    >
    odata/api/<
    EntityType Name
    >$expand=protocols($top=<
    Enter value lesser than expandMaxTopLimit
    >)
    サンプル リクエスト
    この例では、defaultExpandTopLimit を 100 に上書きします。
    http://127.0.0.1:8981/odata/api/interfaces?$expand=protocols($top=100)
  • requestTimeout
    このパラメータは、カスタム クエリ パラメータ timeout を使用して上書きできます。
    リソース URL
    http://<
    nfa odata host
    >:<
    nfa odata port
    >
    odata/api/<
    EntityType Name
    >?timeout=<
    Enter value lesser than maxRequestTimeout
    >
    サンプル リクエスト
    この例では、requestTimeout を 40 に上書きします。
    http://127.0.0.1:8981/odata/api/interfaces?timeout=40
  • defaultQueryTimeout
    このパラメータは、カスタム クエリ パラメータ queryTimeOut を使用して上書きできます。
    リソース URL
    http://<
    nfa odata host
    >:<
    nfa odata port
    >
    odata/api/<
    EntityType Name
    >?queryTimeOut=<
    Enter value lesser than maxQueryTimeout
    >
    サンプル リクエスト
    この例では、インターフェース エンティティの defaultQueryTimeout を 100 に上書きします。
    http://127.0.0.1:8981/odata/api/interfaces?queryTimeOut=100
  • defaultPageSize
    このパラメータは、HTTP ヘッダで maxpagesize パラメータに必要な値を入力して上書きできます。
    サンプル HTTP ヘッダ
    この例では、defaultPageSize を 100 に上書きします。
    Prefer:odata.maxpagesize=100