Windows or Linux?
If Windows, consider moving to Linux. Windows is not an ideal operating system if you have many users & labs.
Is DB and App on different servers?
If not, consider moving it.
Check Tomcat memory allocation
Tomcat should be assigned 2GB memory to run optimally. Open the 'setenv.sh' file in the '<tomcat directory>/bin' directory, and check if -Xmx2048m is present in the below line.
export JAVA_OPTS="-Dfile.encoding=UTF-8 -Xms128m -Xmx2048m -XX:PermSize=64m -XX:MaxPermSize=512m"
Check DB memory allocation
Please refer to "Increase memory for better query performance" in MySQL prerequisites page. If Oracle, consult your DBA.
Check CPU and memory utilization.
- Open Task Manager (Windows) or top command (Linux).
- Check if any process entirely consumes CPU or memory. If some process is hogging all the resources, identify the process, and check what is going on with it.
- Repeat this on both app and DB server.
Check database transactions
- Login into the database.
- Run the following command for MySQL:
show full processlist;
- It will display current running transactions in the database.
- Check if any of the processes are long-running or hogging all the DB resources.
- If yes, identify the query and check if it was run by OpenSpecimen application.