I have a question regarding the user profile service. It is more functional question.

The question is how many users can the user profile service handle?

By this i mean, lets say i have a sharepoint website and like 500 users are simultaniously surfing on it. And the page needs often to retrieve the user profiles and the different properties from them, can it fail at a point, i mean not all the users will get the proper details to see, but empty or corrupted?

I have a problem that (maybe) on high load of the website sometimes a code being executed, which shouldn't be. So with other words the retrieved properties are empty or wrong. We can't reproduce the error.

I made a multi threading app which simulated 300-500 users (threads) and at 300 threads i started to recieve errors:

System.InvalidOperationException: Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool. This may have occurred because all pooled connections were in use and max pool size was reached. at System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection) at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) at System.Data.SqlClient.SqlConnection.Open() at Microsoft.Office.Server.Data.SqlSession.OpenConnection() at Microsoft.Office.Server.Data.SqlSession.ExecuteReader(SqlCommand command, CommandBehavior behavior, SqlQueryData monitoringData, Boolean retryForDeadLock) at Microsoft.Office.Server.Data.SqlSession.ExecuteReader(SqlCommand command, Boolean retryForDeadLock) at Microsoft.Office.Server.UserProfiles.UserProfile.RetrieveUser(String strAcct, Guid gAcct, Byte[] bSid, Nullable`1 recordId, Boolean doNotResolveToMasterAccount, Boolean loadFullProfile) at Microsoft.Office.Server.UserProfiles.UserProfile.get_Item(String strPropName) at OverloadTool.Executor.GetUPManager()

So can i from this conclude that 300 people who are activly surfing will also get some wrong data? Is there on msdn some info about that? Or any sites which explain this behaviour? Or sharepoint cant handle so many users?

  • How many web front ends has the environment?
    – James Love
    Feb 2, 2012 at 10:35
  • Can please post the error message. Feb 2, 2012 at 11:03
  • two front ends present
    – Shkipper
    Feb 2, 2012 at 13:35
  • Which topology are you deploying? Do you have any WAN (Wide Area Network) on your topology. Currently, using the User Profile service application across WAN links is not supported. This service requires direct database access. For WAN environments, the User Profile Replication Engine (UPRE) is recommended instead. From a capacity perspective, at one time, I synchronized 800 users without any problem.
    – Thuan
    Feb 24, 2012 at 9:24

1 Answer 1


SharePoint can certainly handle that many users, also concurrently. I've built an SP 2010 solution that handled around 150,000 user profiles with tens of thousands of active users (although the definition of 'concurrent' may vary).

This definitely sounds like a bad configuration or underperforming hardware. Because you're getting a connection error to the database, I would check whether your SQL server has issues or whether the code you're executing (especially if custom or third-party code) is using multiple connections, for example. One thing to look for in custom code is whether you use one connection over time or whether you open a new connection for every query (and the latter is bad).


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.