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]

Reply via email to