- Increase number of concurrent connections to the DB in alfresco-global.properties
# Number below has to be the maxThreads value + 75 db.pool.max=275
- Increase number of threads that Tomcat will use in server.xml – section 8080, 8443 and 8009 in case you use AJP
- Adjust the amount of memory you want to assign to Alfresco in setenv.sh or ctl.sh (which is the default one):
export CATALINA_OPTS=" -Xmx=16G -Xms=16G"
- Remember to disable all unneeded services
- Enable JodConverter instead of Libreoffice (only Enterprise)
alfresco.batch.count=2000 solr.filterCache.size=64 solr.filterCache.initialSize=64 solr.queryResultCache.size=1024 solr.queryResultCache.initialSize=1024 solr.documentCache.size=64 solr.documentCache.initialSize=64 solr.queryResultMaxDocsCached=2000 solr.authorityCache.size=64 solr.authorityCache.initialSize=64 solr.pathCache.size=64 solr.pathCache.initialSize=64
mergeFactor change it to 25 ramBufferSizeMB change it to 64
April/9/2015 Update! For Solr4 (Alfresco 5.x) add next options to its JVM startup options:
- For MySQL in my.cnf configuration file:
innodb_buffer_pool_size = 4GB max_connections=600 innodb_log_buffer_size=50331648 innodb_log_file_size=31457280 innodb_flush_neighbors=0
- For Postgres in postgresql.conf configuration file
max_connections = 600
- Change limits in /etc/security/limits.conf to the user who is running your app server, for example “tomcat”:
tomcat soft nofile 4096 tomcat hard nofile 65535
If you start Alfresco with a su -c option in /etc/init.d/, for Ubuntu you have to uncomment the pam_limits.so line here /etc/pam.d/su, if this is using login (by ssh) it is uncommented by default. For RedHat/Centos this line has to be uncommented here /etc/pam.d/system-auth.
- Your storage throughput should be greater than 200 MB/sec and this can be checked by:
# hdparm -t /dev/sda /dev/sda: Timing buffered disk reads: 390 MB in 3.00 seconds = 129.85 MB/sec
- Allow more concurrent requests by editing /etc/sysctl.conf
net.core.somaxconn = 65535 net.ipv4.tcp_max_syn_backlog = 65535 net.ipv4.ip_local_port_range = 2048 64512 net.ipv4.tcp_tw_recycle = 1 net.ipv4.tcp_tw_reuse = 1 net.ipv4.tcp_fin_timeout = 10
- A server full reboot is a good preventive measure before going live, it should start all needed services in case of contingency and we will find if we left something back on the configuration.