Forum OpenACS Development: Re: nsdbi, nsdbipg

Collapse
7: Re: nsdbi, nsdbipg (response to 5)
Posted by Gustaf Neumann on
i did some more tests and changed all db-reading operations of a warmed up xowiki instance start page to use partly new wrapper functions using the dbi interface, and using as well the xo::db::sql call for permissions as sketched above.

The total performance improvement as measured with a small instance by the developer support is more than 20%, which is quite good. To make the migration easier, i've extended the nsdbi module; not sure whether all my changes should go into the nsdbi module.

Collapse
8: Re: nsdbi, nsdbipg (response to 7)
Posted by Jim Lynch on
heya Gustaf, curious... when you did the testing, did each iteration include preparing a statement? ordid you prepare a statement (say) at openacs instance startup time, and use that statement?
Collapse
9: Re: nsdbi, nsdbipg (response to 8)
Posted by Gustaf Neumann on
the prepare statements are performed by dbi implicitly and their results are cached by dbi. For the xowiki test most prepares operations (maybe all) were performed after startup, but nevertheless most queries could already use a prepared statements (e.g. permissions). From this point of view, the results are realistic.
Collapse
10: Re: nsdbi, nsdbipg (response to 7)
Posted by Gustaf Neumann on
openacs.org uses now an updated xotcl-core infrastructure, xowiki runs now fully on dbi_*