分享

服务器上安装一个tomcat实现多个应用的服务

 加菲 2011-10-25

服务器上安装一个tomcat实现多个应用的服务

步骤:修改$TOMCAT_HOME/conf/server.xml
内容:

<Server port="8005" shutdown="SHUTDOWN" debug="0">
<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener"
            debug="0"/>
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"
            debug="0"/>

<!-- Global JNDI resources -->
<GlobalNamingResources>

    <!-- Test entry for demonstration purposes -->
    <Environment name="simpleValue" type="java.lang.Integer" value="30"/>

    <!-- Editable user database that can also be used by
         UserDatabaseRealm to authenticate users -->
    <Resource name="UserDatabase" auth="Container"
              type="org.apache.catalina.UserDatabase"
       description="User database that can be updated and saved">
    </Resource>
    <ResourceParams name="UserDatabase">
      <parameter>
        <name>factory</name>
        <value>org.apache.catalina.users.MemoryUserDatabaseFactory</value>
      </parameter>
      <parameter>
        <name>pathname</name>
        <value>conf/tomcat-users.xml</value>
      </parameter>
    </ResourceParams>

</GlobalNamingResources>

<Service name="Catalina"><!--名字可自定义,但是不能和其它相同-->

    <!-- Define a non-SSL Coyote HTTP/1.1 Connector on port 8080 -->
    <Connector port="8083"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               debug="0" connectionTimeout="20000"
               disableUploadTimeout="true" /><!--
端口修改,不能相同-->
     
    <!-- Define a SSL Coyote HTTP/1.1 Connector on port 8443 -->
    <!--
    <Connector port="8443"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" disableUploadTimeout="true"
               acceptCount="100" debug="0" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" />
    -->

    <!-- Define a Coyote/JK2 AJP 1.3 Connector on port 8009 -->
    <Connector port="8009"
               enableLookups="false" redirectPort="8443" debug="0"
               protocol="AJP/1.3" /><!--
端口修改,不能相同-->

    <Engine name="Catalina" defaultHost="localhost" debug="0"><!--名字可自定义,但是不能和其它相同-->
      <!-- Global logger unless overridden at lower levels -->
      <Logger className="org.apache.catalina.logger.FileLogger"
              prefix="catalina_log." suffix=".txt"
              timestamp="true"/>

      <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
                 debug="0" resourceName="UserDatabase"/>
      <!-- Define the default virtual host
           Note: XML Schema validation will not work with Xerces 2.2.
       -->
      <Host name="localhost" debug="0" appBase="/home/dqscdma/work/dest/webapps"
       unpackWARs="true" autoDeploy="true"
       xmlValidation="false" xmlNamespaceAware="false"><!--"/home/dqscdma/work/dest/webapps"
此目录自己设定-->

      <Context path="" docBase="dqis" debug="0" privileged="true" reloadable="true">
                        <Resource name="jdbc/DQSP" auth="Container" type="javax.sql.DataSource"/>
                        <ResourceParams name="jdbc/DQSP"><!--dqis
改成自己存放的文档目录-->
                           <parameter><name>factory</name><value>org.apache.commons.dbcp.BasicDataSourceFactory</value></parameter>
                           <parameter><name>driverClassName</name><value>oracle.jdbc.driver.OracleDriver</value></parameter>
                           <parameter><name>url</name><value>jdbc:oracle:thin:@192.168.10.30:1521:itdata</value></parameter>
                           <parameter><name>username</name><value>wufeng</value></parameter>
                           <parameter><name>password</name><value>wufeng</value></parameter>
                           <parameter><name>maxActive</name><value>20</value></parameter>
                           <parameter><name>maxIdle</name><value>10</value></parameter>
                           <parameter><name>maxWait</name><value>-1</value></parameter>
                           <parameter><name>removeAbandoned</name><value>true</value></parameter>
                           <parameter><name>removeAbandonedTimeout</name><value>60</value></parameter>
                           <parameter><name>logAbandoned</name><value>true</value></parameter>
                        </ResourceParams>
      </Context>

        <Logger className="org.apache.catalina.logger.FileLogger"
                 directory="logs" prefix="localhost_log." suffix=".txt"
            timestamp="true"/>

      </Host>

    </Engine>

</Service>
   <Service name="Catalina1"><!--
名字可修改但是不能和上面相同-->

    <!-- Define a non-SSL Coyote HTTP/1.1 Connector on port 8080 -->
    <Connector port="8086"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               debug="0" connectionTimeout="20000"
               disableUploadTimeout="true" /><!--
端口修改,不能相同-->

    <!-- Define a SSL Coyote HTTP/1.1 Connector on port 8443 -->
    <!--
    <Connector port="8443"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" disableUploadTimeout="true"
               acceptCount="100" debug="0" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" />
    -->

    <!-- Define a Coyote/JK2 AJP 1.3 Connector on port 8009 -->
    <Connector port="8010"
               enableLookups="false" redirectPort="8443" debug="0"
               protocol="AJP/1.3" /><!--
端口修改,不能相同-->

    <Engine name="Catalina1" defaultHost="localhost" debug="0"><!--名字可修改但是不能和上面相同-->
      <!-- Global logger unless overridden at lower levels -->
      <Logger className="org.apache.catalina.logger.FileLogger"
              prefix="catalina_log." suffix=".txt"
              timestamp="true"/>

      <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
                 debug="0" resourceName="UserDatabase"/>
      <!-- Define the default virtual host
           Note: XML Schema validation will not work with Xerces 2.2.
       -->
      <Host name="localhost" debug="0" appBase="/home/dqscdma/work/dest/webapps"
       unpackWARs="true" autoDeploy="true"
       xmlValidation="false" xmlNamespaceAware="false"><!--"/home/dqscdma/work/dest/webapps"
此目录自己设定-->

      <Context path="" docBase="dqsp" debug="0" privileged="true" reloadable="true">
                        <Resource name="jdbc/DQSP" auth="Container" type="javax.sql.DataSource"/>
                        <ResourceParams name="jdbc/DQSP"><!--dqsp
改成自己存放的文档目录-->
                           <parameter><name>factory</name><value>org.apache.commons.dbcp.BasicDataSourceFactory</value></parameter>
                           <parameter><name>driverClassName</name><value>oracle.jdbc.driver.OracleDriver</value></parameter>
                           <parameter><name>url</name><value>jdbc:oracle:thin:@192.168.10.30:1521:itdata</value></parameter>
                           <parameter><name>username</name><value>liuli</value></parameter>
                           <parameter><name>password</name><value>liuli</value></parameter>
                           <parameter><name>maxActive</name><value>20</value></parameter>
                           <parameter><name>maxIdle</name><value>10</value></parameter>
                           <parameter><name>maxWait</name><value>-1</value></parameter>
                           <parameter><name>removeAbandoned</name><value>true</value></parameter>
                           <parameter><name>removeAbandonedTimeout</name><value>60</value></parameter>
                           <parameter><name>logAbandoned</name><value>true</value></parameter>
                        </ResourceParams>
      </Context>

        <Logger className="org.apache.catalina.logger.FileLogger"
                 directory="logs" prefix="localhost_log." suffix=".txt"
            timestamp="true"/>

      </Host>

    </Engine>

</Service>

</Server>

想实现更多的应用服务添加相应的service即可,注意service name不能相同,端口不能相同。

此时还没有弄完,首先在应用服务的根目录下找到WEB-INF文件夹,修改该目录下web.xml中的参数webAppRootKey的值,使得两个应用服务中的值不同就可以。如下:

       <context-param>

              <param-name>webAppRootKey</param-name>

              <param-value>cnet2.webroot</param-value> //修改这个值。

       </context-param>

然后,在加大JVM的对大小。可以通过修改tomcat目录下的bin目录中的catalina.bat文件。添加如下参数:(参数仅供参考)Xms是最小堆大小,Xmx是最大堆大小,一般修改这两个参数就ok了。

set JAVA_OPTS=-Xms512m -Xmx1300m -server -XX:PermSize=64M -XX:MaxPermSize=128m

set JAVA_OPTS=%JAVA_OPTS% -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=16688 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多