Identifying Rising Queues in Epoxy

 

Epoxy (ExIPC) is a shared memory mechanism that enables the Internet Information Services (Inetinfo.exe) and Microsoft Exchange Information Store (Store.exe) processes to quickly shuttle data back and forth. This allows for bi-directional, interprocess communication between the Inetinfo.exe process (which accepts requests from Internet protocols such as WebDAV, IMAP4, NNTP, POP3, and SMTP) and the Store.exe process. This memory is also used by DSAccess, the Exchange component that caches Active Directory information.

If there are performance issues in either the Store.exe or Inetinfo.exe processes, it is common for a queue to build up in Epoxy as one process performs faster than the other. The queues for messages sent from the Store.exe process to the Inetinfo.exe process are represented by counters called Store Out Queue Length. The queues for messages from the Inetinfo.exe process to the Store.exe process are represented by counters called Client Out Queue Length. By monitoring these counters, you can determine which queues are building up and degrading performance.

The following table shows the counters that you need to monitor when looking for buildups in the Epoxy queues.

Performance Counters for Epoxy Queues

Counter Expectations

Epoxy\Client Out Queue Length (WebDAV)

Indicates the number of messages in the queue containing WebDAV messages sent by the Inetinfo.exe process.

Epoxy\Store Out Queue Length (WebDAV)

Indicates the number of messages in the queue containing WebDAV messages sent by the Store.exe process.

  • The queues should be below 10 at all times.

Epoxy\Client Out Queue Length (DSAccess)

Indicates the number of messages in the queue containing DSAccess messages sent by the Inetinfo.exe process.

Epoxy\Store Out Queue Length (DSAccess)

Indicates the number of messages in the queue containing DSAccess messages sent by the Store.exe process.

  • The queues should be below 10 at all times.

Epoxy\Client Out Queue Length (IMAP)

Indicates the number of messages in the queue containing IMAP4 messages sent by the Inetinfo.exe process.

Epoxy\Store Out Queue Length (IMAP)

Indicates the number of messages in the queue containing IMAP4 messages sent by the Store.exe process.

  • The queues should be below 50 at all times.

Epoxy\Client Out Queue Length (NNTP)

Indicates the number of messages in the queue containing NNTP messages sent by the Inetinfo.exe process.

Epoxy\Store Out Queue Length (NNTP)

Indicates the number of messages in the queue containing NNTP messages sent by the Store.exe process.

  • The queues should be below 10 at all times.

Epoxy\Client Out Queue Length (POP3)

Indicates the number of messages in the queue containing POP3 messages sent by the Inetinfo.exe process.

Epoxy\Store Out Queue Length (POP3)

Indicates the number of messages in the queue containing POP3 messages sent by the Store.exe process.

  • The queues should be below 50 at all times.

Epoxy\Client Out Queue Length (SMTP)

Indicates the number of messages in the queue containing SMTP messages sent by the Inetinfo.exe process.

Epoxy\Store Out Queue Length (SMTP)

Indicates the number of messages in the queue containing SMTP messages sent by the Store.exe process.

  • The queues should be below 50 at all times unless there is a mail queue.

Example of Monitoring Epoxy Queues

In this example, POP3 users are experiencing slow responsiveness. By looking at the queue representing calls made from the Inetinfo.exe process to the Store.exe process, the Performance snap-in shows that there is a rise in the Epoxy\Client Out Queue Length (POP3) counter. A possible cause for this rising counter is poor disk performance. In particular, there may be a disk performance issue on the Exchange store that is preventing the Store.exe process from efficiently handling incoming requests.

Monitoring an Epoxy queue using the Performance snap-in

4e93616c-6f1d-480b-a382-ec381c824b46