When possible, design your application to check for information locally before making calls to the server. You can access data locally by building a cache of frequently used items and by familiarizing yourself with properties that are already stored locally. This recommendation applies not only to MAPI functions, but also to other functions that access information from a server.
A Microsoft Exchange Client application retrieves the PR_MESSAGE_CLASS and PR_DISPLAY_NAME information store properties several times during processing. This application runs in conjunction with other client applications that use and store the same properties. In this situation, the client application can be designed to share the properties with the other applications to reduce the total number of RPCs.
A client application forwards open messages and takes more than three seconds to forward each message. It causes as many as sixteen RPCs per message by reading information from the server, changing the Forward form, and writing the information back to the server. All information needed for the Forward form is available locally at the client computer. Because of this, the entire operation can be performed without RPCs if the information is copied from the form for the currently open message, modified as necessary, and used in the Forward form.