These events can be idle or not, based on why are they so high. First
you need to verify whether these are high becuase of the users not
typing in fast enoough / or users taking long breaks, if thats the case
then you can ignore it.
If not, then you need to reduce the number of database calls you make,
since these wait events are in between database calls, lesser database
calls would result in less in between database wait events.
- Follow mark's advise and move data access and manipulation logic
inside stored procedure, so that instead of executing lots of sql
statements (lots of database calls) you can run few stored procedures
(reducing the number of database calls).
- Check whether the application is parsing unnecessarily. i.e.
parsing whether you could have reused a opened cursor (i.e. prematurely
closing a cursor). Reducing unnecessary parsing would reduce the
number of parse calls (database calls).
- Check whether you are using bind variables. Since using bind
variables would allow you to parse once / bind and execute many times.
This would result in decrease of parse calls (database calls).
- Lastly Please go through Cary Milsap's book (Optimizing Oracle
Performance)
He discusees this in great detail and provides a case study about
it.
amit
Received on Sun Jan 16 2005 - 09:10:40 CST