一、mac下启动tomcat:
1.cd 到程序bin目录
2.终端执行 ./startup.sh
命令
二、tomcat线程优化
1.打开/conf/server.xml
文件
2.添加如下配置:
<Executor name="tomcatThreadPool"
namePrefix="catalina-exec-"
maxThreads="500"
minSpareThreads="20"
maxIdleTime="60000"
prestartminSpareThreads="true"
maxQueueSize="100" />
3.参数说明
name:线程池名称
namePrefix:线程前缀
maxThreads:最大并发连接数(不配置默认200,一般建议500~800,要根据自己的硬件条件及实际业务需求而定。)
minSpareThreads:tomcat启动出事化的线程数,默认值25
prestartminSpareThreads:在tomcat初始化的时候就初始化minSpareThreads的值,不设置true时默认
minSpareThreadsmaxQueueSize:最大的等待队列数,超过则拒绝请求
minSpareThreads:线程最大空闲时间60秒
三、tomcat线程策略
1、BIO(同步阻塞式IO)
一个线程处理一个请求
缺点:并发量高时,线程数较多,浪费资源
tomcat7及以下使用BIO
2、NIO(同步非阻塞式IO)
利用异步IO处理,可以通过少量的线程处理大量的请求
tomcat8及以上使用这种方式,tomcat7中需修改如下配置启动:
<Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol" connectionTimeout="20000" redirectPort="8443"/>
ps:单机测试中效率比BIO高出15%
3、AIO(又称NIO.2或APR)
异步非阻塞(需要额外软件)
本小编暂时未在本机搭建成功,如需要可让开发和运维协助 [囧]
四、tomcat开启 JMX协议 实现远程监控
1.打开/bin/catalina.sh文件(Windows系统下是catalina.bat文件)
2.搜索# ----- Execute The Requested Command ---------------
3.在如图位置添加配置(Windows下需在前面添加 set)
JAVA_OPTS="-server -Xms256m -Xmx768m -Djava.rmi.server.hostname=IP地址 -Dcom.sun.management.jmxremote.port=端口号 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"
1.png
(ps:内存优化-server -Xms256m -Xmx768m )
4.启动tomcat
6.实现远程监控
.3png
网友评论