Solaris NCA (ネットワークキャッシュとアクセラレータ) は、HTTP 要求時にアクセスされる Web ページのカーネル内キャッシュを保持することにより、Web サーバーのパフォーマンスを向上します。このカーネル内キャッシュはシステムメモリーを使用するため、通常は Web サーバーによって処理される HTTP 要求のパフォーマンスを大幅に向上します。HTTP 要求時に Web ページがシステムメモリー内に保持されているため、カーネルと Web サーバー間のオーバーヘッドが減少し、Web サーバーのパフォーマンスが向上します。NCA にはソケットインタフェースが用意されており、どのような Web サーバーでも最小限の変更で NCA と通信できます。
要求されたページがカーネル内キャッシュから取得された場合 (キャッシュヒット時) は、パフォーマンスが飛躍的に向上します。要求されたページがキャッシュ内になく、Web サーバーから取得する必要がある場合 (キャッシュミス時) でも、パフォーマンスは大幅に改善されます。
NCA は、専用の Web サーバー上で実行するようにします。NCA が動作するサーバー上で他の大きいプロセスを実行すると、問題が起きることがあります。
NCA はすべてのキャッシュヒットを記録するロギング機能を提供します。ログはパフォーマンスを向上させるためにバイナリ形式で格納されます。ncab2clf コマンドを使用すると、バイナリ形式のログを共通ログ形式 (CLF) に変換できます。
Solaris 9 リリースには、次のような機能強化が実施されています。
ソケットインタフェースの提供
AF_NCA サポートを可能にするベクトル化 sendfile システムコールの提供。詳細は sendfilev(3EXT) のマニュアルページを参照する
ncab2clf コマンド用の 2 つの新しいオプション、具体的には、選択された日付以前のレコードをスキップするための -s オプションと、指定された数のレコードを処理するための -n オプションの追加
ncalogd.conf ファイル内の logd_path_name を用いて raw デバイス、ファイル、または両者の組み合わせを指定可能
このリリースでは、Web サーバーに複数の AF_NCA ソケットを開くことができます。複数のソケットを使用すると、1 つのサーバーで複数の Web サーバーを実行できます。
さらに、新しく /etc/nca/ncaport.conf 構成ファイルが使用できるようになりました。このファイルによって、NCA で使用する IP アドレスやポートを管理することができます。Web サーバーによっては、AF_NCA ソケットを直接にサポートしない場合があります。AF_NCA ソケットをサポートしないサーバーでは、この /etc/nca/ncaport.conf ファイルと NCA ソケットユーティリティライブラリを使って、AF_INET ソケットを AF_NCA ソケットに変換します。