Introduction to Oracle® Solaris 11.2 Network Services

Exit Print View

Updated: December 2014

Network Cache and Accelerator (Overview)

The Network Cache and Accelerator (NCA) increases web server performance by maintaining an in-kernel cache of web pages that are accessed during HTTP requests. This in-kernel cache uses system memory to significantly increase performance for HTTP requests that are normally handled by web servers. Using system memory to hold web pages for HTTP requests increases web server performance by reducing the overhead between the kernel and the web server. NCA provides a sockets interface through which any web server can communicate with NCA with minimal modifications.

In situations where the requested page is retrieved from the in-kernel cache (cache hit), performance improves dramatically. In situations where the requested page is not in the cache (cache miss) and must be retrieved from the web server, performance is also significantly improved.

This product is intended to be run on a dedicated web server. If you run other large processes on a server that runs NCA, problems can result.

NCA provides logging support in that NCA logs all cache hits. This log is stored in binary format to increase performance. The ncab2clf command can be used to convert the log from binary format to common log format (CLF).

    The Oracle Solaris release includes the following enhancements:

  • Sockets interface.

  • Support for vectored sendfile, which provides support for AF_NCA. See the sendfilev(3EXT) man page for more information.

  • New options for the ncab2clf command that support the ability to skip records before a selected date (–s) and to process a specified number of records (–n).

  • logd_path_name in ncalogd.conf can specify either a raw device, a file, or a combination of the two.

  • Support for a web server to open multiple AF_NCA sockets. With multiple sockets, you can have different web servers that run on one server.

  • A new configuration file that is called /etc/nca/ncaport.conf. The file can be used to manage the IP addresses and ports that NCA uses. Your web server might not provide native support of the AF_NCA socket. If your server lacks this support, use this file and the NCA socket utility library to convert an AF_INET socket to an AF_NCA socket.