Jason,

I am running in Tomcat by itself. I haven't hit any broker instance errors, just connection pool ones.... but this is solved after changing the maxActive setting.

Aaron

Jason McKerr wrote:

You broker instances would still be limited by your connection pool I
think.  Are you in a standalone or application server environment?

Jason


On Thu, 2003-07-10 at 22:27, Aaron Longwell wrote:


I have decided to load test an OJB+Struts web application I am building. The results, pass! (but not by a whole lot).

My goal was to support 100 simultaneous users. The application is an event scheduler, for which one view is a calendar-formatted display of events for the month. It uses OJBs getCollectionByQuery (PB API) to retrieve the events.

Using Apache's JMeter, I simulated 100 users loading the calendar page about every 15 seconds. This comes out to around 6-8 requests per second. Average response times are under 1 second on my very modest machine. I received no errors after running at this load for several minutes... in short.. a successful test.

However, upping the users to 150 begins destroying the error percentage. Every error that occured was a commons-logging "unable to borrow connection from pool" exception (see afterword for StackTrace). Can someone explain the performance enhancement features of OJB to me?

I have perused the OJB.properties and found maxActive=100 as the default for the number of brokers. I have changed this to 600 with no result. In my stack trace I see that there is a connectionPoolDescriptor setting of maxActive=21 (see below). Is it possible to change this value in the properties file? What is the name for the name value pair if so? Are there other enhancements I can make to support more users?

Thanks,
Aaron Longwell

Selected Portions of Stack Trace:

Used ConnectionManager instance could not obtain a connection: Could not borrow connection from pool - org.apache.ojb.broker.metadata.JdbcConnectionDescriptor: [EMAIL PROTECTED]
jcd-alias=dovedb
default-connection=true
dbms=MySQL
jdbc-level=2.0
driver=com.mysql.jdbc.Driver
protocol=jdbc
sub-protocol=mysql
db-alias=//localhost/dove
eager-release=false
ConnectionPoolDescriptor={whenExhaustedAction=0, maxIdle=-1, maxActive=21, maxWait=5000, removeAbandoned=false, numTestsPerEvictionRun=10, testWhileIdle=false, minEvictableIdleTimeMillis=600000, testOnReturn=false, logAbandoned=false, removeAbandonedTimeout=300, timeBetweenEvictionRunsMillis=-1, testOnBorrow=true}



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]








---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to