I'm using PHP5.3 on Ubuntu Linux, connected to an Oracle 11 database (running on a different server) via OCI8.
It connects and works perfectly, except that it looks like it queque SELECTs execute from different process on the same table.
I try explain better: my php script "pconnect", execute a query that return about 1000 records, pack the resultset into an array of php objects then close the statement and return the array. Pretty simple, nothing fancy here. No special setting, nor transaction enabled.
If I excute it from 1 client it took 2 secs of db operations only (I track it). If I execute from 10 different clients at the same time it takes about 10-12 secs! like the selects where quequed!
I'm sure it's some configuration problems, but have no idea what I've to look for.
Thanks a lot in advance.
Is there some network limitation? Do you have the webserver configured to handle the number of requests?
Are you hitting some memory limitation on the webserver machine? Does the same thing occur if different tables are used?
Is the [url http://www.php.net/manual/en/function.oci-set-prefetch.php]array size optimized for the queries?
What happens if you fire off an equivalent number of SQL*Plus sessions doing the query?