Tomcat 站点配置
1、bin目录下
1、catalina tomcat 主脚本、执行Java命令调用tomcat的启动与停止 2、cpappend 用于windows系统内部,将项目路径追加至tomcat的classpath 环境变量中 3、digest 生成tomcat密码的加密摘要 4、service 该脚本以windows方式安装卸载tomcat 5、setclasspath 唯一用于系统内部,以设定tomcat 的classpath及许多其他环境变量的脚本 6、tool-wrapper 用于digest脚本系统内部 封装可用于设置环境变量的脚本; 7、version 这是运行catclina 的版本 会输出tomcat的版本信息;
netstat -an |grep 8080
注意:不同的tomcat实例(JVM) 必须使用不同的http端口 ; 以及server Connector元素中的每个端口号也必须不同;
为防止失控的程序损害操作系统;Java运行时具备"最大堆栈大小"的限制;
可以在环境变量 JAVA_OPTS 中进行设置;
【 server.xml 】
tomcat 主配置文件
1、修改 tomcat 字符集(中文乱码)
<Service name="Catalina"> <Executor name="tomcatThreadPool" namePrefix="catalina-exec- "maxThreads="150" minSpareThreads="4"/> <Connector port="80" protocol="HTTP/1.1" maxThreads="150" connectionTimeout="20000" redirectPort="8443" /> <Connector port="80" protocol="HTTP/1.1" maxThreads="150" connectionTimeout="20000" redirectPort="8443" />
1、Executor 配置为一个service的所有connector(web服务)配置一个共享线程池; 减少硬件资源,所有的connector共用一个程序池; 2、classname -- Executor实现的完全限定的Java类名; 3、daemon -- 决定Executor的线程对否为后台线程; 4、name -- 共享线程名称 5、nameprefix -- 每个运行的都有一个字符串 6、maxidletime -- 在tomcat关闭一个线程之前 允许空闲线程持续的时间 6000; 7、maxThreads -- 该线程池可以容纳的最大线程数 200; 8、minSpareThreads -- tomcat应该始终打开的最小不活跃线程 25; 9、threadpriority -- 整数值,线程池中所有线程的线程优先权; 3;
【connector】常见属性
1、connectionTimeout 从接受客户端请求TCPsocker的时刻开始 到请求方发现被发送到tomcat为止; connector可以等待的时间; 2、acceptCount 列队中可以等待最大连接数; 10; 3、bufferSize 默认情况下tomcat缓存了请求输入流;缓存的最大的内存 buffsize*maxthreads 2048; 4、connectionUploadTimeouttomcat 请求的内容是一个长期运行的servlet;例如上传校验文件;需要一个延长时间 30000; 5、keystoreType keystone 文件格式;可以是tomcat的JVM支持的任何格式; 6、maxHttpHeaderSizetomcat 可以传输接受的http请求或相应标题的最大长度;字节为单位; 8192 7、maxKeepAliveRequests 每个客户端到tomcat 的http keep-alive链接能完成的最大请求数; 100; 8、maxPostSizepost 请求参数的最大值; 2MB; 9、maxSavePostSize POST 请求参数的最大值;在认证过程中有容器保存; 4096 ; 10、maxSpareThreads该Connector 应保持active实际却处于idle状态的请求处理书最大线程 11、maxThreads 该Connector应并发运行的请求处理线程的最大数 200 ; 设置太高 则服务器将无法阻挡线程调度且需要太长的时间才能完成请求; 设置太小 则tomcat不能充分利用服务器的硬件资源; 12、minSpareThreads 只要活跃线程没有超过maxThreads的设置值 4; 13、protocl 使用的协议 HTTP/1.1 或者AJP/1.3 ; 14、redirectPort 如果该Connector是针对普通的http(非~SSL) 并为匹配的安全约束要求的SSL传输接收了一个请求; 则tomcat将给指定的端口号执行重定向。443; 15、tcpNoDelay 决定tomcat是否为这一Connector的socker连接使用TCP Nagle算法; 设置为true 表示关闭Nagle算法; 通常关闭改进WEB服务器的性能; 16、truststoreFile 设置线程的优先等级;设置处理请求的先后顺序; 17、tomcat 中线程的默认优先权和Javathread默认优先权相同;
【Engine】 属性
Engine元素代表从其Service元素中的一个connector接受请求,将其交付处理;并将结果返回给Connector
【Host】
【Context】
1、context 代表tomcat实例中WEB应用程序,网站至少是由一个Context构成的; 2、cacheMaxSize 该Context的最大静态资源缓存值了 10240 KB 3、cahceTTL 缓存刷新之间的活跃值; 5000 ms 4、caseSensitive 为Context核实是否是启用或禁用URL区分; 1、web.xml servlet 与其他适用于整个web应用程序设置的配置文件 2、tomcat-users.xml tomcat的UserDataRealm 用于认证的默认的角色 用户以及密码清单 3、catalina.policy tomcat的Java安全防护策略文件 4、context.xml 默认的context设置 应用于安装了tomcat的所有主机的所有部署内容;