...
- JDK 1.6 update 21 or later (JDK 1.7 is not supported as of 2014/08; the SSP development team has also observed somewhat better GC performance with the Sun/Oracle JDK vs OpenJDK)
- Download Location: http://java.sun.com
Environment Variable: JAVA_HOME
Tip title Java Environment Variable JAVA_HOME=/path/to/your/java (ie: /usr/local/java or C:\java\jdk)
(optional)
PATH= append the bin subdirectory to the path statement
- Tomcat 6.X (Tomcat 7 is not supported as of 2014/04)
Instructions for installing and configuring Tomcat for the SSP-Platform (uPortal 4.0)
Warning title Tomcat Configuration It is important to complete sections: Environment Variables, Shared Libraries, Shared Sessions, Java Heap. Minimally, the catalina.properties file must contain:
shared.loader=${catalina.base}/shared/lib/*.jar
And your active connector/s in
<tomcat>/conf/server.xml
must have theemptySessionPath
flag set:<Connector port=
"8080"
protocol=
"HTTP/1.1"
connectionTimeout=
"20000"
redirectPort=
"8443"
emptySessionPath=
"true"
/>
And increase the heap in<tomcat>/bin/setenv.sh
(*nix) or<tomcat>/bin/setenv.bat
(Windows). Smaller sizing is probably feasible, but the examples below match what our SSP CI envs run with. For production systems, start with a max heap of roughly half available physical memory and increase from there if necessary.The uPortal instructions above recommend usingJAVA_OPTS
for heap sizing. This can lead to problems on memory constrained systems becauseJAVA_OPTS
will be used when trying to stop Tomcat with its own scripts. You don't typically need a large heap at all for that operation. SoCATALINA_OPTS
is a better choice for sizing the heap insetenv
scripts, because that var will only be used for Tomcat's http-serving runtime.setenv.sh:
CATALINA_OPTS=-Xms2G -Xmx2G -XX:PermSize=256m -XX:MaxPermSize=256m
setenv.bat (uPortal instructions linked to above are missing the 'set'):
set CATALINA_OPTS=-Xms2G -Xmx2G -XX:PermSize=256m -XX:MaxPermSize=256m
Additionally, a performance improvement has been experienced by enabling compression in Tomcat
Tip Add compression="force" to the server.xml in the connector like the following:
<Connector port="8080" protocol="HTTP/1.1
connectionTimeout="20000"
redirectPort="8443"
emptySessionPath="true"
compression="force" />
...