tomcat-四种运行模式和三种部署模式(优化)

  • 四中运行模式如下:
  • 1-bio: 传统的Java I/O操作,同步且阻塞IO。

  • 2-nio: JDK1.4开始支持,同步阻塞或同步非阻塞IO

  • 3-aio(nio.2): JDK7开始支持,异步非阻塞IO

  • 4-apr: Tomcat将以JNI的形式调用Apache HTTP服务器的核心动态链接库来处理文件读取或网络传输操作,从而大大地提高Tomcat对静态文件的处理性能。

  • 下面是配置Tomcat运行模式改成是NIO模式,并配置连接池相关参数来进行优化:

  •  
    <!--
        <Connector port="8080" protocol="HTTP/1.1"
                   connectionTimeout="20000"
                   redirectPort="8443" />
        -->
        
    <!-- protocol 启用 nio模式,(tomcat8默认使用的是nio)(apr模式利用系统级异步io) -->
        
    <!-- minProcessors最小空闲连接线程数-->
        
    <!-- maxProcessors最大连接线程数-->
        
    <!-- acceptCount允许的最大连接数,应大于等于maxProcessors-->
        
    <!-- enableLookups 如果为true,requst.getRemoteHost会执行DNS查找,反向解析ip对应域名或主机名-->
        
    <Connector port = "8080"
     
    protocol="org.apache.coyote.http11.Http11NioProtocol"
     
            
    connectionTimeout="20000"
            
    redirectPort="8443
    
            maxThreads=“500” 
            minSpareThreads=“100” 
            maxSpareThreads=“200”
            acceptCount="200"
            enableLookups="false"       
        />
    

      

    apr模式启动起来是比较复杂的,详情可参考:http://blog.csdn.net/wanglei_storage/article/details/50225779

    对于bio,nio,nio.2的理解可参考:http://blog.csdn.net/itismelzp/article/details/50886009

  三种部署如下:

  1. 直接把Web项目放在webapps下,Tomcat会自动将其部署

  2. 在server.xml文件上配置 <Context>节点,设置相关的属性即可:

    1. 在其他盘符(可以是非tomcat下目录)下创建一个web站点目录,并创建WEB-INF目录和一个html文件。
    2. 找到Tomcat目录下/conf/server.xml文件。
    3. 在server.xml中的节点下添加如下代码。path表示的是访问时输入的web项目名,docBase表示的是站点目录的绝对路径
    4. <Context path="/web1" docBase="D:\web1"/>
  3. 通过Catalina来进行配置:进入到conf\Catalina\localhost文件下,创建一个xml文件,该文件的名字就是站点的名字。编写XML的方式来进行设置:

    1. 进入到conf\Catalina\localhost文件下,创建一个xml文件,该文件的名字就是站点的名字。
    2. xml文件的代码如下,docBase是你web站点的绝对路径 。
    3. <?xml version="1.0" encoding="UTF-8"?><Context docBase="D:\web1" reloadable="true"></Context>

猜你喜欢

转载自www.cnblogs.com/hongchengshise/p/10371231.html