Difference between revisions of "SUNScholar/Optimisations/Database"
| Line 27: | Line 27: | ||
#Go to: http://wiki.lib.sun.ac.za/index.php/SUNScholar/Prepare_Ubuntu/S06 | #Go to: http://wiki.lib.sun.ac.za/index.php/SUNScholar/Prepare_Ubuntu/S06 | ||
#Search for the step regarding the number of max DB connections allowed and modify as needed. | #Search for the step regarding the number of max DB connections allowed and modify as needed. | ||
| + | #And then [[SUNScholar/Rebuild_DSpace|rebuild Dspace]]. | ||
To start with, it is suggested you match the number of DSpace connections made, however it is wise to allow a little of bit of headroom for idle | To start with, it is suggested you match the number of DSpace connections made, however it is wise to allow a little of bit of headroom for idle | ||
Revision as of 22:50, 26 June 2015
Back to Optimisations
Contents
Introduction
This wiki page details the optimisation done to the PostgreSQL DB to make it production optimised.
DB connection optimisation
As our repository became more popular we noticed that the number database connections increased alarmingly. It is normal web application programming practice to release/sever database connections after a particular programming task on the database is done.
However with a large number of web site vistors in a short period of time the number database connections available soon ran out, so we adjusted DSpace and PostgreSQL to accommodate more visitors in a short period of time. The symptom is usually a blank screen.
See the screenshot below for a typical connection status on SUNScholar, using the http://psi-probe.googlecode.com tool.
Step 1 - Allow DSpace to make more DB connections
To do this you will need to modify the DSpace configuration to make more connections.
- Go to: http://wiki.lib.sun.ac.za/index.php/SUNScholar/Install_DSpace/S04
- Search the relevant build.properties file for db.maxconnections = 50 change the allowed number of connections to 150.
- And then rebuild Dspace.
150 connections should be a good start to tuning DSpace for DB connections, you can adjust as needed, remember though that the PostgreSQL DB can only take so many connections and that more DB connections requires more server resources!
Step 2 - Enable the PostgreSQL DB to accept more connections
Now that DSpace wants to make more connections, you must tell the PostgreSQL DB to accept more connections.
To do this you will need to modify the PostgreSQL DB configuration to accept more connections, see details below.
- Go to: http://wiki.lib.sun.ac.za/index.php/SUNScholar/Prepare_Ubuntu/S06
- Search for the step regarding the number of max DB connections allowed and modify as needed.
- And then rebuild Dspace.
To start with, it is suggested you match the number of DSpace connections made, however it is wise to allow a little of bit of headroom for idle DB connections, say at least another 50 connections.
Miscellaneous DB optimisations
- Fix "browse index" configuration to reduce the PostgreSQL database server query load.
http://wiki.lib.sun.ac.za/index.php/SUNScholar/Browse_Indexes
- Vacumn the database regularly
http://wiki.lib.sun.ac.za/index.php/SUNScholar/Daily_Admin