Platform SDK: Exchange Server

Application Performance

It's always important to design your Microsoft Exchange Server application for maximum performance because the range between average and excellent performance in this environment is quite noticeable. Using the programming practices and tools described in this section can result in a substantial performance gain — not only for your application, but for the entire Microsoft Exchange Server system.

Minimizing the number of remote procedure calls (RPCs) for your application is the most important factor in improving performance. Two important ways to reduce RPCs are using the MAPI_DEFERRED_ERRORS flag and batching calls when using the IMAPIProp::GetProps and IMAPIProp::SetProps methods.

Using tools such as the Windows NT Performance Monitor and the FERNEL32 DLL can also improve performance. They can alert you to less efficient code processes so you can optimize these areas.

Recommendations contained in this section are loosely organized in order of importance and ease of completion. In general, the ones listed first are easiest to implement and provide the largest performance gains.