Does anyone know where to set the specific properties for the domino connection pooling
I cannot find anywhere the name/location of the file where I must set these properties.
Also, if anyone has experience in tuning these parameters or knows of any other settings to increase performance, please let me know. At the moment we are experiencing some performance issues with our domino portlets. We are on portlet factory version 18.104.22.168.
This topic has been locked.
2 replies Latest Post - 2009-12-17T08:39:14Z by Dennis_te_Lintelo
Pinned topic Domino connection pooling properties
Answered question This question has been answered.
Unanswered question This question has not been answered yet.
Updated on 2009-12-17T08:39:14Z at 2009-12-17T08:39:14Z by Dennis_te_Lintelo
SystemAdmin 110000D4XK334 PostsACCEPTED ANSWER
Re: Domino connection pooling properties2009-12-16T20:53:19Z in response to Dennis_te_LinteloThey should be set in web-inf/config/override.properties.
Looks like the PF documentation didn't mention where to put them.
The orb pooling (seeing numOrbs) was added to enhance the performance of the Domino builders, which use Domino DIIOP (corba) to communicate.
If numOrbs is not set, it will default to 5.
This means the builder will pool N orbs (which each have a tcp/ip connection to Domnio corba). As each request comes in, the builder will select an orb from the pool in a round robin fashion in order to spread the load. In effect, one orb can be servicing multiple users (which performs much better than creating a new lotus.domino.Session object -- and an expensive tcp/ip connection! -- for each request.)
If one user performs a Domnio transaction that takes a long time to return, then the other users on that same orb who are waiting for a Domino service call will have to wait. So one thing to check would be to ensure your Domino transactions -- such as retrieving view data -- are fast. If your Domino data isn't changing often, I would recommend using the Cache Control builder or the Result Caching section of the Service Operation builder to cache the results. (The latter is most recommended, since developing your models in a consumer/provider fashion with Service Def and Service Op builders is also a best practice)
Also, monitor the performance of your Domino server when you notice performance problems with the web app. Is the Domino Server's CPU pegged? If so, this could be your bottleneck and I would recommend performance tuning DIIOP on your Domino server. Also monitor other stats, such as mem and disk i/o on the Domino server.
By the way, you should probably not use the originalImplementation property. This is there so you can switch back to the original way we did connection pooling, which was to pool the lotus.domino.Session object in an apache commons pool only when the builder is using shared credentials. (If each user uses a different uname/pw, then the pool wouldn't be used). Overall, the use of orb pooling performs better anyway.
Let me know how it goes.
Dennis_te_Lintelo 2000002JCV3 PostsACCEPTED ANSWER
Re: Domino connection pooling properties2009-12-17T08:39:14Z in response to SystemAdminThanks for your answer Sam.
Best approach probably would be using the result caching section of the service operation builder.
I will also ask our domino administrator to have a look at the DIIOP performance tuning.