Exchange 2010 - Outlook 2010 & 2013 clients hang when using Address List

In my Exchange 2010 environment, when users (mostly on Outlook 2013) when they go to type in a new e-mail and type a recipient and click "Check names", or if they click "Address Book", if begins lagging and having problems connecting to the Exchange server.

I believe I've got AD/Sites configured properly and DC's in the proper locations.
What else do I need to check? What's entailed when invoking Check Name or Address List that would cause Outlook to start hanging with connecting to Exchange (trying to retrieve data from exchange server)?    
Server is up to date currently CU10 for Exchange 2010 SP3    
It runs virtualized in vsphere, OS 2008 R2 64-bit. Has 36 GB of RAM and 4 cpu/4core.    
server is up to date on CU10 Exchange 2010 Sp3    
Runs virtualized in vSphere on OS 2008 R2, 4 CPU sockets and 4 Cores.  
has about 150 RPC connections on a average.    
Best practices analyzer didn't find anything strange but 1 critical issue of the "MaxPageSize is set too High" which is set at 10,000, I'm told my other admins due to LDAP query needs.  I'm not sure if that's going to affect the issues are having with Outlook, though.
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Amit KumarCommented:
can you check if outlook is running on online mode?

Change it to cached mode and try. What I think outlook is running in Online mode and have some network latency so when it try to search any user it takes time to fetch data.

But if you outlook in cache mode then you will have to download offline address book, which is real time available in outlook.
garryshapeAuthor Commented:
We've tried cache mode and not but doesn't seem to help. We wouldn't be able to get cache mode on in our environment anyway either because some systems are thin clients with small hdd's.

I ran performance counter MSExchange ADAccess Local Site Domain Controllers for on LDAP Search Time and LDAP Read Time for counter  and it does appear 1 or 2 DC's that are Global Catalogs spike every few seconds, and I'm wondering if that is what is lagging the Address List/Check name features:
garryshapeAuthor Commented:
In ExMon RPC Analysis, I do get "Highly active users found". The top 6 users account for 73% of the MAPI CPU usage on the server. Long-running MAPI operations found. What can I do for that? Exchange User Monitor tool gives me data I can't make sense of.
Big Business Goals? Which KPIs Will Help You

The most successful MSPs rely on metrics – known as key performance indicators (KPIs) – for making informed decisions that help their businesses thrive, rather than just survive. This eBook provides an overview of the most important KPIs used by top MSPs.

garryshapeAuthor Commented:
I think it's working better with user in cached mode.
Does that cache the Global Address List or something? Lightening the load on the Exchange Server?
Amit KumarCommented:
Cached Exchange Mode was introduced in Outlook 2003 to give users a seamless online and offline Outlook experience. It also insulates users from network latency and connectivity issues while they are using Outlook. By caching the user's mailbox and the OAB locally with Cached Exchange Mode, Outlook no longer depends on continuous network connectivity for access to user information. While connected, Outlook continuously updates users’ mailboxes so that the mailboxes are kept up-to-date. If a user disconnects from the network—for example, by removing a portable computer, such as a laptop, from a docking station—the latest Outlook information is automatically available offline.

Online Mode works by using information directly from the server, and, as the name implies, it requires a connection. Mailbox data is only cached in memory and never written to disk.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
garryshapeAuthor Commented:
Ok you think that's ok then for desktop environment?
I think the manager turned it off previously (put everyone to online mode) due to their clients' address book not updating enough.
Is there a way to control how often everybody's address book updates?
Amit KumarCommented:
by default Outlook updates offline address book in cache mode within every 24 hours. Now it depends on you how you update OAB on Exchange server side.

You can use 12 hours update so your OAB on Exchange server will be updated twice in a day.

This is really a good article to check and configure schedule of OAB on Exchange side.
garryshapeAuthor Commented:
Ok. It may or may not be need, I'm not sure.
So far what I've done was remove two global catalog servers from being used by Exchange, as they had high queries/latency.
Amit KumarCommented:
Exchange is highly dependent on Global Catalog servers. Are these local site domain controllers on which you have disabled GC?

can you check if your Exchange server is configured with static Domain controllers and they are not GC enabled.

use this command: Get-ExchangeServer “Server Name” –Status | fl Identity,Static*

If it so then you will have to enable GC on DCs,
garryshapeAuthor Commented:
Sorry I mean I still have like 6 DC's that are GC's in Exchange.
I excluded static that of 2 Domain Controllers that are GC's, as to not let Exchange use them. Since then I think there is improvement in the GAL lookups for Online/non-cached user.
Amit KumarCommented:
Simple thing... never mention static DCs to Exchange those are not GC. on the other hand if you multiple DC's don't set as static let Exchange choose.
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today

From novice to tech pro — start learning today.