tomcat的https配置
配置Tomcat服务器
打开Tomcat根目录下的/conf/server.xml,找到Connector port="8443"配置段,修改为如下:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
SSLEnabled="true" maxThreads="150" scheme="https"
secure="true" clientAuth="true" sslProtocol="TLS"
keystoreFile="D:\\home\\tomcat.keystore" keystorePass="123456"
truststoreFile="D:\\home\\tomcat.keystore" truststorePass="123456" />
(tomcat要与生成的服务端证书名一致)
属性说明:
clientAuth:设置是否双向验证,默认为false,设置为true代表双向验证
keystoreFile:服务器证书文件路径
keystorePass:服务器证书密码
truststoreFile:用来验证客户端证书的根证书,此例中就是服务器证书
truststorePass:根证书密码
测试
在浏览器中输入:https://localhost:8443/,会弹出选择客户端证书界面,点击“确定”,会进入tomcat主页,地址栏后会有“锁”图标,表示本次会话已经通过HTTPS双向验证,接下来的会话过程中所传输的信息都已经过SSL信息加密。
tomcat的内存和线程配置
1、修改启动时内存参数、并指定JVM时区 (在windows server 2008 下时间少了8个小时)
在Tomcat上运行j2ee项目代码时,经常会出现内存溢出的情况,解决办法是在系统参数中增加系统参数:
window下, 在catalina.bat最前面
set JAVA_OPTS=-XX:PermSize=64M -XX:MaxPermSize=128m -Xms512m -Xmx1024m
一定加在catalina.bat最前面
即set "CURRENT_DIR=%cd%"前面
linux下,在catalina.sh最前面增加
JAVA_OPTS="-XX:PermSize=64M -XX:MaxPermSize=128m -Xms512m -Xmx1024m -Duser.timezone=Asia/Shanghai"
注意:前后二者区别,有无set,有无双引号
2、线程池配置(Tomcat6下)
使用线程池,用较少的线程处理较多的访问,可以提高tomcat处理请求的能力
使用方式:首先,打开/conf/server.xml,增加
[html] view plaincopy
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
maxThreads="500" minSpareThreads="20" maxIdleTime="60000" />
最大线程500(一般服务器足以),最小空闲线程数20,线程最大空闲时间60秒。
然后,修改<Connector ...>节点,增加executor属性,如:
[html] view plaincopy
<Connector executor="tomcatThreadPool"
port="80" protocol="HTTP/1.1"
connectionTimeout="60000"
keepAliveTimeout="15000"
maxKeepAliveRequests="1"
redirectPort="443"
....../>
注意:可以多个connector公用1个线程池
3、调整连接相关Connector的参数
[html] view plaincopy
<Connector executor="tomcatThreadPool"
port="80" protocol="HTTP/1.1"
connectionTimeout="60000"
keepAliveTimeout="15000"
maxKeepAliveRequests="1"
redirectPort="443"
maxHttpHeaderSize="8192" URIEncoding="UTF-8" enableLookups="false" acceptCount="100" disableUploadTimeout="true"/>
参数说明:
connectionTimeout - 网络连接超时,单位:毫秒。设置为0表示永不超时,这样设置有隐患的。通常可设置为30000毫秒
keepAliveTimeout - 长连接最大保持时间(毫秒)。此处为15秒
maxKeepAliveRequests - 最大长连接个数(1表示禁用,-1表示不限制个数,默认100个。一般设置在100~200之间) the maximum number of HTTP requests that can be held in the pipeline until the connection is closed by the server. Setting this attribute to 1 disables HTTP/1.0 keep-alive, as well as HTTP/1.1 keep-alive and pipelining. Setting this to -1 allows an unlimited number of pipelined or keep-alive HTTP requests. If not specified, this attribute is set to 100
maxHttpHeaderSize - http请求头信息的最大程度,超过此长度的部分不予处理。一般8K
URIEncoding - 指定Tomcat容器的URL编码格式
acceptCount - 指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数的请求将不予处理,默认为10个。defines the maximum queue length for incoming connection requests when all possible request processing threads are in use. Any requests received when the queue is full are refused. The default value is 10.
disableUploadTimeout - 上传时是否使用超时机制
enableLookups - 是否反查域名,取值为:true或false。为了提高处理能力,应设置为false
bufferSize - defines the size (in bytes) of the buffer to be provided for input streams created by this connector. By default, buffers of 2048 bytes are provided.
maxSpareThreads - 做多空闲连接数,一旦创建的线程超过这个值,Tomcat就会关闭不再需要的socket线程 the maximum number of unused request processing threads that are allowed to exist until the thread pool starts stopping the unnecessary threads. The default value is 50
maxThreads - 最多同时处理的连接数,Tomcat使用线程来处理接收的每个请求。这个值表示Tomcat可创建的最大的线程数。the maximum number of request processing threads to be created by this Connector, which therefore determines the maximum number of simultaneous requests that can be handled. If not specified, this attribute is set to 200
minSpareThreads - 最小空闲线程数,Tomcat初始化时创建的线程数 the number of request processing threads that are created when this Connector is first started. The connector will also make sure it has the specified number of idle processing threads available. This attribute should be set to a value smaller than that set for maxThreads. The default value is 4
minProcessors - 最小空闲连接线程数,用于提高系统处理性能,默认值为10。(用于Tomcat4中)
maxProcessors - 最大连接线程数,即:并发处理的最大请求数,默认值为75。(用于Tomcat4中)
备注:
Tomcat4中可以通过修改minProcessors和maxProcessors的值来控制线程数。
在Tomcat5+主要对以下参数调整
maxThreads
Tomcat使用线程来处理接收的每个请求。这个值表示Tomcat可创建的最大的线程数。
acceptCount
指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数的请求将不予处理。
connnectionTimeout
网络连接超时,单位:毫秒。设置为0表示永不超时,这样设置有隐患的。通常可设置为30000毫秒。
minSpareThreads
Tomcat初始化时创建的线程数。
maxSpareThreads
一旦创建的线程超过这个值,Tomcat就会关闭不再需要的socket线程。
4、负载均衡、集群的配置
Tomcat6支持分布式部署,可以实现集群功能,提高响应能力。
5、利用JMX监控Tomcat运行情况,需要手工调整启动参数,如下:
打开cataline.bat,增加一行
set JAVA_OPTS=%JAVA_OPTS% -Dcom.sun.management.jmxremote.port=10090 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.util.logging.config.file="%CATALINA_BASE%\conf\logging.properties"
linux下修改cataline.sh:
JAVA_OPTS="-Dcom.sun.management.jmxremote.port=10090 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.util.logging.config.file=%CATALINA_BASE\conf\logging.properties"
注意JDK\jre\lib\management\management.properties文件必须存在。
重新启动tomcat节点,然后用jconsole连接(此处端口wei10090)
6、Tomcat增加一个应用
在server.xml的Host标签中增加行
<Context displayName="OA" docBase="/app/web-apps/GACWP" path="" />
path代表上下文名称,空表示是根路径。
分享到:
相关推荐
《Tomcat常用配置详解》 Tomcat作为一款广泛使用的开源Java Servlet容器,是Apache软件基金会下的Jakarta项目的一部分。它提供了对Servlet和JSP规范的支持,使得开发者能够轻松地部署和运行Java Web应用。本文将...
本资料详细解析了Tomcat的常用配置信息,对于Java开发面试者和Web项目开发初学者来说,了解并掌握这些知识是至关重要的。 1. **Tomcat基础配置** - `server.xml`: 这是Tomcat的核心配置文件,包含了服务器的全局...
### Tomcat常用配置详解 #### 一、Tomcat连接数量配置 Tomcat作为一款广泛使用的Web服务器,其连接数量配置对于提升系统响应能力和稳定性至关重要。本文将深入探讨Tomcat连接数配置的关键参数及其作用。 ##### **...
Tomcat的常用配置Tomcat的常用配置Tomcat的常用配置
Apache Tomcat是一款开源的Java Servlet容器,用于部署和运行Java Web应用程序。它是基于Sun Microsystems的Java Servlet和JavaServer Pages(JSP)技术的。Tomcat以其轻量级、易用性和稳定性著称,是开发和测试Java...
### Tomcat常用功能的配置详解 #### 一、修改Tomcat的JDK目录 在运行Tomcat时,我们需要指定一个JDK版本。这是因为Tomcat作为Java应用服务器,其运行依赖于JDK环境。若想更改Tomcat所使用的JDK路径,可以按照以下...
2. **共享session配置:** 在`<Manager>`元素中设置`sharedSessionConfig`属性为true,启用集群间会话共享。 3. **负载均衡器配置:** 配置如Nginx,设定相应的负载均衡策略,并将请求转发到各个Tomcat实例。 4. **...
以下是一个详细的步骤指南,涵盖了从下载到配置的全过程,以及一些常用的设置,包括环境变量和内存配置。 1. **下载Tomcat**: 首先,访问Apache官方网站(http://tomcat.apache.org/)下载Tomcat 8的最新稳定版本...
3.1.2 **Tomcat常用配置文件** 主要配置文件有server.xml、web.xml、context.xml等。server.xml定义了服务器的整体配置,web.xml定义全局Web应用的默认配置,context.xml则用于配置特定Web应用。 3.1.3 **Tomcat...
Tomcat 6.0 配置心得 Tomcat 6.0 是一个功能强大且性能高效的 Web 服务器,它相比 Tomcat 4.0 有了许多改进和增强。然而,在使用 Tomcat 6.0 时,我们可能会遇到一些问题,如连接池配置、中文问题、中文文件名问题...
标题"tomcat5.0和tomcat5.5.12配置连接池的异同"指的是对比分析两个不同版本的Tomcat——5.0和5.5.12在设置数据库连接池(通常使用JNDI资源来实现)时的配置步骤和方法上的差异。连接池是优化数据库性能的重要手段,...
2. 将 Redis 文件中的 conf 配置文件和常用命令移动到统一文件中 mv /lamp/redis-3.0.7/redis.conf /usr/local/redis/etc cd /lamp/redis-3.0.7/src mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-...
【eclipse+tomcat环境配置】是开发Java Web应用程序时常用的一种集成开发环境与服务器的配置方式。在本文中,我们将详细讲解如何配置这个环境,包括安装JAVA虚拟机、配置Tomcat、设置环境变量,以及在eclipse中配置...
Tomcat 中配置数据源原理详解 在本文中,我们将详细介绍在 Tomcat 中配置数据源的原理。数据源是指Java应用程序连接数据库的接口,通过配置数据源,我们可以在 Java 应用程序中访问数据库。 首先, let's talk ...
在MYEclipse中,Tomcat是最常用的Web服务器之一。配置Tomcat可以通过以下步骤来实现: 1. 打开MYEclipse,点击菜单栏中的Window菜单,然后点击Preferences,弹出Preferences对话框。 2. 在Preferences对话框中,...
在Java Web开发中,Tomcat作为常用的Servlet容器,经常被用于部署和运行Java EE应用程序。JNDI(Java Naming and Directory Interface)是Java平台的一项服务,它允许应用程序通过名字查找资源,如数据源、EJB等。在...