Developing a High Performance RPC Server

The information in this section applies to remote protocol sequences: ncacn_ip_tcp, ncacn_http, ncacn_np, and to Windows 2000 and Windows XP.

This section addresses three primary aspects of RPC server performance:

Code path length is another primary performance consideration for RPC. Code path length is generally well understood, and since literature and tools are widely available on that topic, this article does not address it.

An important and established general performance rule to remember while considering RPC performance is this: find the bottleneck in the system, and work to resolve that. The gating bottleneck may not be the RPC programming, and if that is the case, performance tuning in RPC will not result in enhanced performance until that bottleneck is addressed. For example, a system plagued by resource contention does not need to make more efficient use of the network.

If your system is deployed in various environments, it is a good idea to make sure all aspects of it are well tuned, as different environments can produce varied performance bottlenecks.