NI Webサーバをクライアントからのリクエストに並列で対応できるように構成する

更新しました Oct 25, 2022

使用製品

ソフトウェア

  • LabVIEW

問題

  • NI Web サーバーで Web サービスを公開しています。クライアントからの要求を並列で処理したいと考えています。どのようにすればよいですか?
  • NI Web サーバの.confファイルを変更して、同時に使用可能なクライアントとワーカーの数を調整したいと考えています。これらのファイルはどこにありますか?
  • 並列クライアント要求に対応するNI Webサーバ構成ファイル内で使用可能な機能はどのようなものがありますか?

解決策

NI Web サーバ構成ファイルは、 C:\Program Files\National Instruments\Shared\Web Server\confにあります。メインファイルはhttpd.confです。
NI Web サーバは Apache ベースであるため、並列クライアント要求にはマルチプロセッシングモジュール(MDM)が必要です。

注:他の.confファイルは本件とは別の機能にのみ適用されるため変更しないでください。 Web サービスが必要な構成を確実に適用するには、httpd.confのみを変更します。

httpd.confファイル内に、次の機能を追加できます。
  • ThreadsPerChild
    • これは、各子プロセスによって作成されるスレッドの数を指定し、次の構文となります。 ThreadsPerChild <number>
      <number>はスレッドの数を表します。デフォルト値は 64 です。

  • ListenBackLog
    • これは、保留中の接続のキューの最大長を指定し、次の構文を取ります。 ListenBackLog <backlog>
      <backlog>はキューの長さを表します。

    • この機能はクライアント接続の最大数に達した場合に使用されます。

注: MaxRequestWorkersはWindows には適用されないため、 NI Web サーバーでは使用できません。

追加情報

Apache MDMの詳細については、 Apache MPM Common Directivesを参照してください。