[root@localhost ~]# tail -n4 /etc/profile
export JAVA_HOME=/usr/local/java
export JRE_HOME=/usr/local/java/jre
export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
Jave Runtime Environment JAVA运行时环境 类文件路径 命令文件 或者可执行脚本
代码语言:javascript复制[root@localhost ~]# tar -zxf apache-tomcat-8.5.35.tar.gz
[root@localhost ~]# mv apache-tomcat-8.5.35 /usr/local/tomcat
开启: /usr/local/tomcat/bin/startup.sh 关闭: /usr/local/tomcat/bin/shutdown.sh
/usr/local/tomcat/logs/catalina.out 日志文件
1.tomcat多实例 端口 8080
tomcat配置文件解析 server.xml https://www.cnblogs.com/kismetv/p/7228274.html#title3
代码语言:javascript复制[root@localhost ~]# mkdir /usr/local/tomcat/webapps/hello
[root@localhost ~]# cd /usr/local/tomcat/webapps/hello
[root@localhost hello]# echo "hello world" > index.jsp
nginx apache --> html index.html
1.目录浏览 curl http://192.168.6.10:8080/hello/ —》目录
JVM内存监控
代码语言:javascript复制<%
Runtime rtm = Runtime.getRuntime();
long mm = rtm.maxMemory()/1024/1024;
long fm = rtm.freeMemory()/1024/1024;
long tm = rtm.totalMemory()/1024/1024;
out.println("JVM memory detailed info:<br>");
out.println("Max memory: " mm "MB" "<br>");
out.println("Free memory: " fm "MB" "<br>");
out.println("Total memory: " tm "MB" "<br>");
out.println("Available memory: " (mm fm-tm) "MB" "<br>");
%>
Max memory: 405MB最大内存 Free memory: 21MB剩余内存 Total memory: 101MB总内存 Available memory: 325MB可用内存
JMX远程调用 Tomcat远程调用
代码语言:javascript复制307 CATALINA_OPTS="-Djava.rmi.server.hostname=192.168.6.10
308 -Dcom.sun.management.jmxremote
309 -Dcom.sun.management.jmxremote.port=8080
310 -Dcom.sun.management.jmxremote.ssl=false
311 -Dcom.sun.management.jmxremote.authenticate=true"
vim jmxremote.password 最后两行改密码
首先另外一台机器有java环境 两面关闭防火墙、宽容模式
应用管理器 App manager tomcat应用管理器 基于上面的操作 主机管理平台 host manager
应用管理 应用部署方式: 1)add manager 2)手动 效率提升—》交互–》非交互 ①方法
代码语言:javascript复制cp bdqnweb.war /usr/local/tomcat/webapps/
/usr/local/tomcat/bin/shutdown.sh
/usr/local/tomcat/bin/startup.sh
②方法
代码语言:javascript复制mkdir /usr/local/tomcat/webapps/bdqnweb
unzip bdqnweb.war -d /usr/local/tomcat/webapps/bdqnweb
③方法
host manager 主机(host)管理
允许所有的主机
创建角色
tomcat优化 1)安全(tomcat加固) 端口防护 8080—》非8080 禁用目录浏览 禁用后台管理 app manager
服务器隐藏 apache tomcat/8.5.35 思路:对于可能出现的错误代码 进行错误页面优化 vim /usr/local/tomcat/conf/web.xml
1)内核参数优化 2)JVM内存优化 3)模型优化 4)并发优化
代码语言:javascript复制[root@localhost hello]# echo 'net.ipv4.ip_local_port_range
> net.ipv4.tcp_syn_retries=2
> net.ipv4.tcp_synack_retries=2
> net.ipv4.tcp_keepalive_time=1500
> net.ipv4.tcp_fin_timeout=15
> net.ipv4.tcp_max_syn_backlog=20000
> net.core.netdev_max_backlog=65535' >> /etc/sysctl.conf
nfs–》rpcbind–》32768-65535 2048 - 65535 6379 8080 11211 9092 2181 分布式 TCP三次握手和四次握手 syn队列的长度 1024 网卡接收 》 处理速度
JVM内存优化
Xms最小内存 Xmx最大内存
62行的命令最后应该在/usr/local/apr/lib
1.BIO blocking I/O 阻塞I/O 效率低 并发性能很差 2NIO nonblocking I/O 非阻塞I/O 基于系统缓冲区 可以提供非阻塞I/O操作 拥有比BIO更高的并发 3.APR apache portable runtime apache 便携运行时 调用heeptd的动态链接库来进行文件的读取和传输 提高tomcat对静态文件的处理能力 是tomcat高并发的首选模式
[root@localhost ~]# vim /usr/local/tomcat/conf/server.xml
88行:复制 双引号内org.apache.coyote.http11.Http11NioProtocol 修改Apr
并发优化 [root@localhost ~]# vim /usr/local/tomcat/conf/server.xml