This content has been marked as final. Show 7 replies
In my personal experience this parameter does not usually affect performance all that much. I have very rarely needed to change it from the default. If you are concerned there might be a performance impact to your configuration, I would set up a performance lab and study performance characteristics under different threadnumber configurations.
Each of those threads can handle about 10-20 concurrent requests depending on the platform so the default I think 30 is normally sufficient for most environments unless you have a lot of persistent connections. Generally I would not set it above 50 but in order to determine what is required you would need to called some more performance statistics and monitor the thread number with representative load and duration of ldap queries.
Actually each of those threads handles only one request at a time, from the initial read to the request completion. Persistent searches, considered by the directory as never-ending requests, are handled by a distinct thread pool.
In addition to that, up to 5 (by default) threads can be used in parallel to handle concurrent requests from each client connection.
So, if your application sends several requests in parallel on each client connection, it may make sense to increase that thread number, but in our labs, we usually set the thread number to the number of virtual processors * 1.5 for general-purpose deployments.
Thankyou all for your inputs,
In our environment its value is 128..which seems to be really high..I see CPU is always high around 80% and this might be cause.....as per all your input i believe its value should be lower around 60 or so.
I will do some more testing and might lower the value if needed.
I would like to find out about nsslapd-threadnumber, what does it used for and
what should be the value of it, right now i have a value set to 115, This seems to be huge as per my research and the overhead needed can take up more memory than needed . Was there a reason why this was set so high?
i need to know the formula to calculate the correct should be used.
Any input would be appreciate it...
As said in the doc, "The nsslapd-threadnumber value should be increased if you have many directory clients performing time-consuming operations such as add or modify. This ensures that there are other threads available for servicing short-lived operations such as simple searches.". See also my post earlier in this thread.
Why is it set to 115 ? Probably because someone in charge of your directory changed it ! The default value is 30.
Again, there is no magic formula to set this parameter. Changing it should be considered only if there are performance issues in your directory deployment. I think that trying to adjust this ahead, independently of the traffic pattern, is a dead end.
My 2 cents
Thats right, i believe we can change it as per performance ...mine is set to 128 which is really high...but we are getting lots of adds and mod... its consuming high memory but we have dedicated memory available, so our servers can handle it fine...so i guess it all depends how you want to use it and what percent of memory is available for you.