Take the 2-minute tour ×
SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. It's 100% free, no registration required.

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?

share|improve this question
    
How many web front ends has the environment? –  James Love Feb 2 '12 at 10:35
    
Can please post the error message. –  Akhilesh Nirapure Feb 2 '12 at 11:03
    
two front ends present –  Shkipper Feb 2 '12 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 '12 at 9:24
add comment

1 Answer 1

up vote 2 down vote accepted

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).

.b

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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