jetty.xml 解读

<?xml version="1.0"?>

<!DOCTYPE Configure PUBLIC "-//MortBay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd">

 

<!-- 配置Server对象,此时会调用org.mortbay.jetty.Server默认构造函数new一个Server 路径:jetty-6.1.22\modules\jetty\src\main\java\org\mortbay\jetty\Server.java-->

<Configure id="Server" class="org.mortbay.jetty.Server">

 

    <!-- =========================================================== -->

    <!-- 配置线程池 -->

    <!-- =========================================================== -->

 

    <!-- 调用当前Server对象的setThreadPool方法 -->

    <Set name="ThreadPool">

      <!-- new一个ThreadPool对象,作为setThreadPool方法的参数 路径 \jetty-6.1.22\extras\threadpool\src\main\java\org\mortbay\thread\concurrent  -->

      <New class="org.mortbay.thread.concurrent.ThreadPool">

        <!-- 设置线程池核心线程数大小 -->

        <Set name="corePoolSize">50</Set>

 

        <!-- 设置线程池最大线程数 -->

        <Set name="maximumPoolSize">50</Set>

      </New>

 

    </Set>

 

 

 

    <!-- =========================================================== -->

    <!-- 注册 connectors                                              -->

    <!-- =========================================================== -->

  

    <!-- 调用当前Server对象的addConnector方法  -->

    <Call name="addConnector">

      <Arg> <!--Arg 标签表示addConnector方法的参数列表-->

            

           <!--new一个SelectChannelConnector对象-->

          <New class="org.mortbay.jetty.nio.SelectChannelConnector">

 

            <!--调用当前SelectChannelConnector对象的setHost方法,

                    host表示Connector需要监听的IP地址或者hostname,

                    SystemProperty标签用来获取Java系统变量。

             -->

            <Set name="host"><SystemProperty name="jetty.host" /></Set>

 

            <!-- 监听端口 -->

            <Set name="port"><SystemProperty name="jetty.port" default="8080"/></Set>

 

            <!-- 一个连接的最大空闲时间  -->

            <Set name="maxIdleTime">30000</Set>

 

            <!-- Acceptor线程数量,Accepto的功能是接收客户端连接然后分配个 ThreadPool处理-->

            <Set name="Acceptors">2</Set>

            

            <!-- 是否开启统计功能  -->

            <Set name="statsOn">false</Set>

            

            <Set name="confidentialPort">8443</Set>

 

            <!-- 连接数量达到该数值时,Jetty会认为服务器资源已被耗尽  -->

           <Set name="lowResourcesConnections">5000</Set>

 

            <!-- 当资源饱和时,连接最大等待时间,时间单位是毫秒 -->

           <Set name="lowResourcesMaxIdleTime">5000</Set>

          </New>

      </Arg>

    </Call>

 

 

    <!-- =========================================================== -->

    <!-- 设置Handlers                            --> 

    <!-- =========================================================== -->

 

    <Set name="handler">

<!-- HandlerCollection 中每一个Handler都会被按顺序执行 路径 \jetty-6.1.22\modules\jetty\src\main\java\org\mortbay\jetty\handler\HandlerCollection.java --> 

      <New id="Handlers" class="org.mortbay.jetty.handler.HandlerCollection">

        <Set name="handlers">

         <Array type="org.mortbay.jetty.Handler">

           <Item>

                <!-- ContextHandler 的集合 --> 

             <New id="Contexts" class="org.mortbay.jetty.handler.ContextHandlerCollection"/>

           </Item>

           <Item>

              <!-- DefaultHandler 如果前一Handler没有处理request的话就会执行它。用来输出提示信息或者输出网站图标 --> 

             <New id="DefaultHandler" class="org.mortbay.jetty.handler.DefaultHandler"/>

           </Item>

            

            <!-- 请求日志记录器 路径 \jetty-6.1.22\modules\jetty\src\main\java\org\mortbay\jetty\handler\RequestLogHandler.java  -->

           <Item>

             <New id="RequestLog" class="org.mortbay.jetty.handler.RequestLogHandler"/>

           </Item>

         </Array>

        </Set>

      </New>

    </Set>

    ....................

 

posted @ 2013-04-13 22:29  李秋  阅读(3032)  评论(0编辑  收藏  举报