Description of Latency in Microsoft ExchangeExchange is Microsoft's email platform. It has two basic flavours, the cloud version called Exchange Online, which is included in various Office 365 products, and Exchange, which is the on-premises version that organisations can host on their own hardware. Exchange is not one database but many databases, and is not one component but many components. For example, the component that accepts email from outside senders is a different component to that which routes messages into specific mailboxes. Consequently, many operations in Exchange do not take place instantaneously. Exchange has a number of objects which include: - User mailboxes (linked to a login);
- Shared mailboxes (not linked to a specific login can be shared between various logins);
- Rooms and other resources;
Creating mailboxes or changing their email addresses may not be effective immediately. When a mailbox is created it must be instantiated within the mail store (database) and this can sometimes be very fast (almost immediate) or may take minutes depending on the status of the Exchange service. Adding aliases to mailboxes may not work for several minutes. Also, distribution groups sometimes will not accept email immediately upon their creation. Additionally, any other changes to these objects are copied into a structure in the backend of the database called the Offline Address Book (OAB). The purpose of the OAB is to keep a list of objects that can be referenced quickly rather than having to enumerate every object continually, because in normal operation the list of objects does not change for 99% of the time. The update cadence on the OAB is about 8-hourly. What this looks like for an Exchange user, usually via the Outlook application, is that a list of objects in the system can be seen in the Address Book. By default, Outlook shows the Offline Global Address List (GAL). This is a copy of the OAB that Outlook maintains locally so that it can be opened very quickly, again, to avoid having to enumerate every object on the server and download all the information. Every so often, Outlook checks against the OAB on the server and downloads the incremental changes. So a change to an object may not appear in the Offline Global Address List immediately. Generally speaking, the update cadence is about once daily. So the Offline GAL may be up to about 24 hours out of date against the OAB, which itself might be 8 hours out of date. Via Outlook there is another view of the OAB which is simply the Global Address List. For systems with a large number of objects, this may take some time to show if it is selected via the Address Book. But it may also be around 8 hours out of date because it presents the OAB, not a current list of objects. Generally speaking, Outlook does not need a manual “download” to refresh data with an Exchange backend because it constantly syncs. So pressing F9 achieves virtually nothing. However it is possible to use the Send/Receive option to force a download of the Address Book. In this case the local Offline GAL will be updated against the current version of the OAB on the server, so the Offline GAL may still be out of date depending on the status of the OAB. Another process that takes a period of time is when shared mailboxes are linked to a user. Outlook automatically detects the shared mailbox via a process called Autodiscover. However this refreshes about hourly. So adding a shared mailbox to a user will take some time to appear also. So as a quick guide to maximum delays in Exchange: - User/shared mailbox creation with ability to accept email and allow user login — usually immediately upon creation but sometimes minutes or hours;
- Distribution list and other group creation or email alias change — up to several minutes;
- Object changes such as email aliases, names, other meta-data — up to 8 hours to appear on Offline Address Book, up to about 24-30 hours to appear in Offline Global Address List in clients;
- Appearance of shared mailboxes in Outlook when linked to an existing user — about an hour for Outlook to detect linked mailbox and additional time to download mailbox data depending on mailbox size; and
- In the SharePoint/OneDrive system, when adding a user to a group, the group may appear immediately via Teams the next time it refreshes, but may not be available via SharePoint/OneDrive for a day or more.
|