ubuntu安装java8+tomcat8

安装java8

从官网下载tar包到机器上

解压tar包到/usr/local目录下

1
tar xvf jdk-8u121-linux-x64.tar.gz -C /usr/local

设置环境变量

/etc/profile文件, 添加如下内容

1
2
3
4
export JAVA_HOME=/usr/local/jdk1.8.0_121
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH:

执行source /etc/profile

安装tomcat8

从官网下载tar包到机器上

解压tar包到/usr/local目录下

1
tar xvf apache-tomcat-8.5.12.tar.gz -C /usr/local

修改bin目录下可执行文件权限

1
2
$ cd /usr/local/apache-tomcat-8.5.12/bin
$ chmod +x *.sh

指定startup.sh后,要等待很长时间才能将各个模块启动的解决方案

$JAVA_HOME/jre/lib/security/java.security文件中的securerandom.source=file:/dev/urandom替换为securerandom.source=file:/dev/./urandom

或者

catalina.sh中添加,export CATALINA_OPS="-Djava.security.egd=file:/dev/./urandom"

并发设置

catalina.sh文件中添添加如下内容
Java 8时

1
JAVA_OPTS="-server -Xms2048m -Xmx3072m -XX:MetaspaceSize=512m -XX:MaxMetaspaceSize=512m"

Java 8之前的版本

1
JAVA_OPTS="-server -Xms2048m -Xmx3072m -XX:PermSize=512m -XX:MaxPermSize=512m"

server.xml文件需要配置的关键内容

1
2
3
4
5
6
7
8
9
10
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
maxThreads="2000" minSpareThreads="100" prestartminSpareThreads="true" maxQueueSize="2000" />
<Connector port="8080" protocol="HTTP/1.1"
executor="tomcatThreadPool" acceptCount="2000"
connectionTimeout="20000" URIEncoding="UTF-8"
compression="on"
compressionMinSize="2048"
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain,application/javascript,image/gif,image/jpeg,image/jpg"
/>

解决无法showdown进程

bin/shutdown.sh文件将

1
exec "$PRGDIR"/"$EXECUTABLE" stop "$@"

修改加上 -force,修改后如下

1
exec "$PRGDIR"/"$EXECUTABLE" stop -force "$@"

然后在bin/catalina.sh文件,在

1
PRGDIR=`dirname "$PRG"`

后面加上

1
2
3
4
if [ -z "$CATALINA_PID" ]; then
CATALINA_PID=$PRGDIR/CATALINA_PID
cat $CATALINA_PID
fi