As we know that Liferay comes with a lot of functionality bundled that not everybody might need, this article explains how it can be minimized to gain memory, CPU cycles, etc.
Remove unused portlets:
Edit the liferay-portlet.xml (or liferay-portlet-ext.xml if using the ext environment) and add an entry to every portlet that you want to disable setting the include element to false. For example, to remove the mail portlet you can use:
<?xml version="1.0"?>
<!DOCTYPE liferay-portlet-app PUBLIC "-//Liferay//DTD Portlet Application 5.1.0//EN"
"http://www.liferay.com/dtd/liferay-portlet-app_5_1_0.dtd">
<liferay-portlet-app>
<portlet>
<portlet-name>1</portlet-name>
<struts-path>mail</struts-path>
<include>false</include>
</portlet>
</liferay-portlet-app>
Removing unused web applications/services :
Liferay comes with several auxiliary web applications that can be removed if not needed. These are:
- cms-web: can be removed if the legacy CMS system is not being used
- lazslo-web: can be removed if lazslo is not being used
- tunnel-web: can be removed if Liferay's services are not being accessed remotely
Minimize the database :
Liferay comes with two sets of db creation scripts:
- create-minimal-.sql: Creates the tables and minimal necessary data
- create-.sql: Additionally loads a lot of example data and content. It's the one used to populate the HSQL database included in the bundle.
To minimize the database, use the create-minimal-.sql scripts.