利用Apache配置Tomcat集群(JAVAWEB应用)
- 格式:doc
- 大小:51.00 KB
- 文档页数:2
APACHE 2.2.4+TOMCAT6.0.14配置负载均衡的网站目标:使用 apache 和 tomcat 配置一个可以应用的 web 网站,要达到以下要求:1、 Apache 做为 HttpServer ,后面连接多个 tomcat 应用实例,并进行负载均衡。
2、为系统设定 Session 超时时间,包括 Apache 和 tomcat3、为系统屏蔽文件列表,包括 Apache 和 tomcat注:本例程以一台机器为例子,即同一台机器上装一个apache+2个Tomcat。
一、前期准备工作:安装用的程序APAHCE 2.2.4下载:apache_2.2.4-win32-x86-no_ssl.msiTOMCAT6.0.14下载:apache-tomcat-6.0.14.zip直接解压。
APACHE-tomcat连接器:mod_jk-apache-2.2.4.so远程下载:/Apache/tomcat/tomcat-connectors/jk/bina ries/win32/jk-1.2.23/mod_jk-apache-2.2.4.so二、安装过程APAHCE安装目录:C:\Program Files\Apache Software Foundation\Apache2.2,下称dirApache。
两个TOMCAT目录:自行解压到dirTOMCATA和dirTOMCATB即可。
这两个安装过程就不详细说明了。
mod_jk-apache-2.2.4.so复制到APACHE安装目录下的modules目录(dirApache\modules)。
三、配置1、Apache配置1.1、 workers.properties配置在dirApache\conf下新建一个workers.properties文件,用记事本打开workers.properties文件,写入如下内容:代码:worker.list=loadbalancerworker.loadbalancer.type=lbworker.loadbalancer.balanced_workers=tomcat2,tomcat1worker.loadbalancer.sticky_session=trueworker.loadbalancer.sticky_session_force=true# Set properties for tomcat1 (ajp13)worker.tomcat1.type=ajp13worker.tomcat1.host=127.0.0.1worker.tomcat1.port=8019worker.tomcat1.lbfactor=20worker.tomcat1.cachesize=1000worker.tomcat1.cache_timeout=600worker.tomcat1.socket_keepalive=1#worker.tomcat1.reclycle_timeout=300worker.tomcat1.local_worker=1worker.tomcat1.socket_timeout=0worker.tomcat1.retries=3# Set properties for tomcat2(ajp13)worker.tomcat2.type=ajp13worker.tomcat2.host=127.0.0.1worker.tomcat2.port=8029worker.tomcat2.lbfactor=80worker.tomcat2.cachesize=1000worker.tomcat2.cache_timeout=600worker.tomcat2.socket_keepalive=1#worker.tomcat2.reclycle_timeout=300worker.tomcat2.local_worker=1worker.tomcat2.socket_timeout=0worker.tomcat2.retries=3其中worker.tomcat1.type =ajp13和worker.tomcat2.type=ajp13这个要记住,要和Tomcat下配置对应。
Tomcat安装配置1- 动态web1.1 web服务器本⾝是⼀个程序,运⾏在服务器上。
也称为Web容器,写的程序是运⾏在Web容器中。
容器作⽤:共享资源(图⽚,⽹页),将服务器上资源分享给浏览器。
解析写的Java程序处理⽤户发送的请求,并且对请求做出响应。
把⽣成的结果以⽹页的⽅式显⽰在浏览器上。
基本结构服务器缺点:服务器的动态web资源出现错误,需要重新编写我们的后台程序,重新发布。
服务器优点:Web页⾯可以动态更新,所有⽤户看到都不是同⼀个页⾯,它可以与数据库交互。
2- Tomcat2.1 安装tomcat2.2 Tomcat配置2.2.1 环境变量的配置CATALINA_HOME%CATALINA_HOME%\bin添加Tomcat的安装⽬录配置PathTomcat的启动与关闭常⽤命令启动的命令:startup.bat关闭的命令:shutdown.bat2.3 Tomcat的⽬录结构2.4 Tomcat项⽬发布⽅式1: 直接将项⽬复制到webapps⽬录下。
⽅式2: 采⽤压缩⽂件.war的⽅式。
将整个项⽬使⽤压缩⼯具打包成⼀个zip⽂件,将zip的扩展名为war。
复制到webapps⽬录下,tomcat会⾃动解压成⼀个同名的⽬录。
2.5 idea中配置Tomcat编辑运⾏配置添加Tomcat的配置服务器信息配置服务器的详细信息修改项⽬发布的访问地址点右上⾓的启动图标,启动Tomcat服务器服务器启动成功的状态信息⽇志乱码现象启动Tomcat的时候会出淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log Server.鏈嶅姟鍣ㄧ増鏈�:解决这种乱码的问题,解决问题的⽅法是到tomcat/conf/⽬录下,修改logging.properties将java.util.logging.ConsoleHandler.encoding = utf-8更改为 java.util.logging.ConsoleHandler.encoding = GBK。
在最新版本中的eclipse for java ee中配置javaweb项目+tomcat:首先下载eclipse 地址:/downloads/然后下载tomcat 我用的是tomcat最新版7.03的地址:/download-70.cgi下载jdk:/technetwork/java/javase/downloads/index.html下载好jdkTomcat插件下载地址:/sysdeo/eclipse/tomcatplugin下载最新版本首先安装jdk 之后配置环境变量:编辑系统变量:第一步:新建java—home后面的地址是你的jdk安装地址自己更改第二步设置classpath 输入%AJA V A_HOME%\lib.;就可以了记住lib后面要有点和分号第三步在dos窗口中输入cmd输入命令javac 敲击enter键等于回车键显示如下:这配置成功配置tomcat7.03第一步:安装好tomcat7点击next同意第三步选择full之后输入4:点击next输入你的用户名和密码5:点击next6:finsh然后我的电脑->属性————系统保护-----------高级---------环境变量-----------按照如下在系统变量中输入1:2:3:4:在classpath下输入tomcat安装的地址在tomcat——lib目录下——找到servelt_api如下图之后安装javaEE 将tomcat插件解压放到:javaEE的plugins文件夹下在Step1:之后新建links文件夹上图有:Step2:在里面新建文件Step3:加入如下内容:你的eclipse中的pugins文件夹下的插件地址:path=F:\eclipse+tomcat\javaee\eclipse\plugins\com.sysdeo.eclipse.tomcat_3.3.0\启动:将看到tom猫图标表示配置插件成功eclipse:1:点击window2:按照如下操作3:按照如下选择advanced:4:点击java --------installedjres点击ok5:点击server 选择add添加一个server tomcat 7.0-------点击ok5新建一个dymaic webproject 如下图必须设置一样6,在webcontent目录下新建一个jsp页面6:点击右键——--选择————runas---RunOnServer运行如上图。
本文介绍如何配置Tomcat和Terracotta服务器将普通的Web应用部署到集群中,实现跨Tomcat节点的session 复制,以达到负载均衡、提高系统吞吐量和灾难恢复的效果。
基本原理简介一般利用T omcat搭建Web应用集群有如下几种方法:1、利用负载均衡器的粘session的方式把所有同一session的请求都发送到相同的T omcat节点。
这样不同用户的请求就被平均分配到集群中各个tomcat节点上,实现负载均衡的能力。
这样做的缺点是没有灾难恢复的能力。
一旦一个节点发生故障,这个节点上所有的session信息全部丢失;2、利用T omcat session复制的机制使得所有session在所有Tomcat节点中保持一致。
当一个节点修改一个session数据的时候,该节点会把这个session的所有内容序列化,然后广播给所有其它节点。
这样当下一个用户请求被负载均衡器分配到另外一个节点的时候,那个节点上有完备的session信息可以用来服务该请求。
这种做法的问题是对session哪怕有一点点修改,也要把整个sessions数据全部序列化(serialize),还要广播给集群中所有节点,不管该节点到底需不需要这个session。
这样很容易会造成大量的网络通信,导致网络阻塞。
一般采用这种方式,当Tomcat节点超过4个时候,整个集群的吞吐量就不能再上升了;3、第三种方式是通过cookie保存用户信息的一个或几个关键字,每一个http请求到达web应用的时候,web 程序拿这个关键字到数据库中读取相关的数据,然后对其进行处理。
也就是说把session数据保存到了数据库中。
这样以来在内存中的session就完全不需要了。
这样做的缺点就是加大了数据库的负载,使得数据库变成了集群的瓶颈。
而通过构造数据库集群提高负载能力往往需要高额的成本。
Terracotta的基本原理是对于集群间共享的数据,当在一个节点发生变化的时候,T erracotta只把变化的部分发送给T erracotta服务器,然后由服务器把它转发给真正需要这个数据的节点。
apache 和tomcat 整合的基本步骤Apache和Tomcat是Java Web开发中常用的两个服务器软件,通过整合Apache和Tomcat可以提高Web应用的性能和安全性。
下面将介绍Apache和Tomcat整合的基本步骤。
1. 安装Apache首先需要安装Apache服务器。
可以从官方网站或其他信任的下载源下载最新稳定版的Apache服务器软件。
安装过程中需要指定安装路径,并确保Apache服务器可以正常运行。
2. 安装Tomcat接下来需要安装Tomcat服务器。
同样可以从官方网站或其他信任的下载源下载最新稳定版的Tomcat服务器软件。
安装过程中需要指定安装路径,并确保Tomcat服务器也可以正常运行。
3. 配置Apache和Tomcat完成安装后,需要进行一些配置工作。
首先找到Apache的配置文件httpd.conf,通常位于Apache安装目录的conf文件夹中。
在该文件中添加以下配置信息:LoadModule jk_module modules/mod_jk.soJkWorkersFile conf/workers.propertiesJkLogFile logs/mod_jk.logJkLogLevel infoJkLogStampFormat这些配置信息用于加载与Tomcat整合相关的模块,并设置相关日志文件和级别。
4. 配置workers.properties接着需要创建workers.properties文件,该文件用于配置与Tomcat 连接的工作进程。
在配置文件中添加以下配置信息:worker.list=worker1worker.worker1.type=ajp13worker.worker1.host=localhostworker.worker1.port=8009在这里我们配置了一个名为worker1的工作进程,指定了连接的类型为AJP13,主机为localhost,端口为Tomcat服务器配置的AJP连接端口,默认为8009。
Apache与tomcat的整合及负载均衡系统环境:Windows Server 2021 R2 SP1虚拟机环境:Red Hat Enterprise Linux Server release 5.4 (Tikanga) X64安装软件版本:JDK:1.6.0_19 Tomcat: Apache: JK:实施步调:一、安装软件。
1tar -xz2345./configure --prefix=/usr/local/apache2 --enable-so --enable-mods-shared=most--with-mpm=worker6make7make install89/jk/native/1011./configure --with-apxs=/usr/local/apache2/bin/apxs12make13make install二、配置整合及负载均衡1 cp / /usr/local/apache2/modules2配置环境变量vi /etc/profile在文本末尾参加以下内容JAVA_HOME=JDK安装路径CATALINA_HOME=tomcat安装路径CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.PATH=$JAVA_HOME/bin:$PATHexport JAVA_HOME CATALINA_HOME CLASSPATH PATH3应用初始的环境变量source /etc/profile4点窜以下几处而且在末尾加上:Include /usr/local/apache2/conf/ 5添加及设置vi /usr/local/apache2/增加以下内容#加载mod_jk ModuleJkLogLevel info载分配控制制器JkMount /* lb6添加及设置vi /usr/local/apache2/conf/添加以下内容worker.list = lb,tomcat1,tomcat2#server 列表#========tomcat1========worker.tomcat1.port=8009#ajp13 端标语,在tomcat下server.xml配置,默认8009#tomcat的主机地址,如不为本机,请填写ip地址worker.tomcat1.type=ajp13worker.tomcat1.lbfactor = 1#server的加权比重,值越高,分得的请求越多#========tomcat2========worker.tomcat2.port=8009#ajp13 端标语,在tomcat下server.xml配置,默认8009#tomcat的主机地址,如不为本机,请填写ip地址worker.tomcat2.type=ajp13worker.tomcat2.lbfactor = 1#server的加权比重,值越高,分得的请求越多#========controller,负载均衡控制器========worker.lb.type=lbworker.lb.balanced_workers=tomcat1,tomcat2#指定分担请求的tomcatworker.lb.sticky_session=17、将JSP文件放入/usr/local/tomcat/webapps/ROOT8 启动apache和tomcat8 翻开浏览器输入就是这么简单。
Apache+tomcat集群+session复制作者:吴钢奇时间:2010/09/23MSN:w7374520@目标:在服务器上搭建1个apache+4个tomcat应用,tomcat之间实现session复制。
Tomcat解析所有的网页,apache此刻的作用就是做代理。
参考了很多网上好文档,非常感谢前人无私奉献,谢谢!1、环境硬件:一个四核3.0CPU,4G内存,200GSATA硬盘系统:Redhat AS 5.3源码包下载:1、Httpd下载/apache//httpd/httpd-2.2.16.tar.gz2、Tomcat下载//tomcat/tomcat-7/v7.0.2-beta/bin/apache-tomcat-7.0.2.tar.gz3、mod_jk 下载地址:/dist/tomcat/tomcat-connectors/jk/source/jk-1.2.30/tomcat-connectors-1.2.30-src.tar.gz2、安装apache[root@adman ~]# cd /usr/local/src/ #进入源码包下载目录,这个可以随便定[root@adman src]# tar zxvf httpd-2.2.16.tar.gz #解压缩[root@adman src]# cd httpd-2.2.16 #进入解压目录[root@adman httpd-2.2.16]# ./configure --prefix=/usr/local/apache2 \> --enable-cache \ #configure参数根据自己的需要添加> --enable-mem-cache \ —可以使用help获得相关参数> --with-mpm=prefork \> --enable-so \> --enable-rewrite \> --enable-ssl[root@adman httpd-2.2.16]# make #编译[root@adman httpd-2.2.16]# make install #安装[root@adman httpd-2.2.16]# cd /usr/local/apache2[root@adman apache2]# vim conf/httpd.conf52 # LoadModule foo_module modules/mod_foo.so53 LoadModule jk_module modules/mod_jk.so #添加jk模块,模块是编译jk1.2.30得到106 DocumentRoot "/usr/local/webapps" #修改文档主目录133 <Directory "/usr/local /webapps"> #修改文档主目录146 Options Indexes FollowSymLinks158 Order allow,deny159 Allow from all160161 </Directory>416 Include conf/mod_jk.conf #添加jk配置文件,在末尾直接添加如果apache日志出现: session cache no configuration 警告信息请添加下面两行。
Linux平台Apache双机高可用集群+ Tomcat负载均衡集群配置手册在这个配置手册中,使用的操作系统和软件清单如下:操作系统:RedHat Enterprise Linux AS4 U4 64bit(安装时最好选择完全安装)软件:jdk-1_5_0_15-linux-amd64.binTomcat5.5.26httpd-2.0.63.tar.gzjakarta-tomcat-connectors-jk2-src-current.tar.gzipvsadm-1.24.tar.gzlibnet.tar.gzheartbeat-2.1.3-3.el4.centos.x86_64.rpmheartbeat-pils-2.1.3-3.el4.centos.x86_64.rpmheartbeat-stonith-2.1.3-3.el4.centos.x86_64.rpm因为是linux操作系统,所以在安装软件时请使用对应自己操作系统内核的软件,这是整个集群成功的第一步。
本配置手册中的软件都是对应RedHat Enterprise Linux AS4 U4 64bit 这个版本的软件。
jdk-1_5_0_15-linux-amd64.binJAVA环境包使用的是64位1.5版Tomcat版本为公司指定的5.5版本Apache为2.0.63版jakarta-tomcat-connectors-jk2-src-current.tar.gz是连接Apache和Tomcat的连接插件,具体可以去Tomcat网站上查找下载ipvsadm-1.24.tar.gzlibnet.tar.gz这两个是用于2台Apache服务器虚拟一个IP地址使用heartbeat-2.1.3-3.el4.centos.x86_64.rpmheartbeat-pils-2.1.3-3.el4.centos.x86_64.rpmheartbeat-stonith-2.1.3-3.el4.centos.x86_64.rpm这3个软件是用于2台Apache服务器之间的心跳检测结构图Apache1以以以以以Tomcat1Tomcat2Apache22台Tomcat服务器使用Tomcat软件可以自己做集群,2台Apache服务器需要其他的软件实现虚拟服务器功能,工作站访问虚拟IP地址访问2台Apache服务器,再通过Apache服务器访问Tomcat服务器第3 页总13 页1.安装JAVA环境包1)输入命令:./ jdk-1_5_0_15-linux-amd64.bin执行完毕后,会在当前目录下生成一个JDK-1.5.0_15的文件夹2)在 /usr/local/下新建一个名字为JAVA文件夹,将个JDK-1.5.0_15的文件夹拷入到该文件夹下3)设置环境变量。
模拟环境部署文档一、本部署文档所使用软件列表文件服务器群组负载均衡服务器:apache2.2文件服务器群组文件服务器:apache2.2Java web应用服务器群组负载均衡服务器:apache2.2Java web应用服务器群组应用服务器:tomcat5.5地市文件服务器:tomcat5.5二、apache负载均衡apache文件服务器群组配置(在服务器192.168.2.241)Apache实例明细:负载均衡apache:名称<apacheB>文件服务apache:名称<apacheFile1>,<apacheFile2>1、安装apache,作为主服务器(apacheB),假设安装路径在E:\apche2.2,http监听端口80,2、拷贝两份apache文件目录(即E:\apche2.2),分别命名为apacheFile1和apacheFile2,用作文件服务器。
3、修改apacheFiel1目录下的conf中的httpd.conf,将配置文件中的路径都改为E:\apacheFile1,将文件中的Listen 80和ServerName localhost:80这两个地方修改为1010,web应用路径E:\apache\web\main4、修改E:\apacheFile1\htdocs\index.html,将内容改为It works! 1010以便之后测试时区分。
5、运行cmd命令,到E:\apacheFile1\bin目录下,执行httpd -k install -n"apacheFile1" -f " E:\apacheFile1\conf\httpd.conf",这样就在系统在注册了名为“apacheFile1”的服务6、对apacheFile2目录做第3、4、5步的类似操作,将端口修改为2020,新建服务apacheFile27、修改主服务器(apacheB)配置文件E:\apche2.2\conf\httpd.conf,将其中的#监测主服务器状态插件LoadModule status_module modules/mod_status.so#负载均衡插件LoadModule proxy_http_module modules/mod_proxy_http.so LoadModule proxy_balancer_module modules/mod_proxy_balancer.so 前的#注释符去掉并在文件最后增加以下内容#停止正向代理功能ProxyRequests Off#不进行反向代理的路径ProxyPass /server-status !ProxyPass /balancer-manager !ProxyPass / balancer://file/ stickysession=jsessionid nofailover=On<proxy balancer://file/>BalancerMember http://localhost:1010 loadfactor=1BalancerMember http://localhost:2020 loadfactor=1</proxy>#监测主服务器状态<Location /server-status>SetHandler server-statusOrder Deny,AllowDeny from allAllow from all</Location>#监测负载均衡状态<Location /balancer-manager>SetHandler balancer-managerOrder Deny,AllowDeny from allAllow from all</Location>8、运行apache2.2下的bin目录中的ApacheMonitor.exe,分别运行apache2.2,apacheFile1,apacheFile2三个服务9、测试A、打开一个浏览器窗口,访问http://localhost,如果看到输出It works!1010或者It works! 2020,则表示负载均衡配置成功,不断地刷新页面,服务器会轮流将请求转发给1010和2020负载服务器B、访问http://localhost/ server-status可以查看主服务器运行状态C、访问http://localhost/ balancer-manager可以查看各节点的工作运行状态三、文件服务器的压缩响应说明:文件服务使用apache的反向代理负载均衡,用户发出的请求,通过apacheB负载均衡发送请求给apacheFile1或者apacheFile2, apacheFile1或apacheFile2响应数据到apacheB, apacheB进行后续的响应发送数据给客户端,居于此,我们在apacheFile1,apacheFile2启用文件压缩功能(减少负载均衡apache的压力),进行用户的请求响应修改apacheFile1,apacheFile2服务器配置文件httpd.conf,启用文件压缩插件,将其中的LoadModule deflate_module modules/mod_deflate.soLoadModule headers_module modules/mod_headers.so前的#注释符去掉apacheFile1,apacheFile2的httpd.conf的文件末尾增加响应压缩配置内容<Location /># Insert filterSetOutputFilter DEFLATE# Netscape 4.x has some problems...BrowserMatch ^Mozilla/4 gzip-only-text/html# Netscape 4.06-4.08 have some more problemsBrowserMatch ^Mozilla/4\.0[678] no-gzip# MSIE masquerades as Netscape, but it is fine# BrowserMatch \bMSIE !no-gzip !gzip-only-text/html# NOTE: Due to a bug in mod_setenvif up to Apache 2.0.48# the above regex won't work. You can use the following# workaround to get the desired effect:BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html# Don't compress imagesSetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary# Make sure proxies don't deliver the wrong contentHeader append Vary User-Agent env=!dont-vary</Location>四、apache文件服务器缓存说明:文件服务使用apache的反向代理负载均衡,用户发出的请求,通过apacheB负载均衡发送请求给apacheFile1或者apacheFile2, apacheFile1或apacheFile2响应数据到apacheB, apacheB进行后续的响应发送数据给客户端,居于此,我们在apacheFile1,apacheFile2启用文件缓存功能(减少负载均衡apache的压力),进行用户的请求响应1、内存缓存方式A、启用内存缓存插件,将apacheFile1,apacheFile2的httpd.conf中LoadModule mem_cache_module modules\mod_mem_cache.so前的#注释符去掉B、在apacheFile1,apacheFile2的httpd.conf末尾增加内存缓存的配置信息MCacheMaxObjectCount 13001MCacheMaxObjectSize 6400000# 指定最大流式化响应可缓冲长度为64KB:MCacheMaxStreamingBuffer 65536MCacheMinObjectSize 10000MCacheRemovalAlgorithm GDSFMCacheRemovalAlgorithm LRUMCacheSize 7000002、硬盘缓存方式A、启用硬盘缓存插件,将apacheFile1,apacheFile2的httpd.conf中LoadModule expires_module modules/mod_expires.soLoadModule file_cache_module modules/mod_file_cache.soLoadModule headers_module modules/mod_headers.soLoadModule proxy_module modules/mod_proxy.soLoadModule proxy_http_module modules/mod_proxy_http.soLoadModule cache_module modules/mod_cache.soLoadModule disk_cache_module modules/mod_disk_cache.soLoadModule jk_module modules\mod_jk-1.2.27-httpd-2.2.10.so前的#注释符去掉B、在apacheFile1,apacheFile2的httpd.conf末尾增加硬盘缓存的配置信息#cache配置##cache文件存放目录CacheRoot "C:/cache"#启用cache调用的url根CacheEnable disk /CacheEnable fd /#不启用cache的配置,对/下的应用不进行缓存# CacheDisable /#CacheDirLevels指定了子目录的层数,CacheDirLength指定了每级子目录名的字符数。
Tomcat 部署项目的三种方法1、下载Tomcat 服务器官网下载地址:/回到顶部2、启动并部署Tomcat 服务器①、解压tomcat 安装包到一个非中文目录下②、配置环境变量。
JAVA_HOME(指向JDK 安装的根目录)③、双击apache-tomcat-6.0.16\bin 目录下的startup.bat,启动服务器(如果一闪而过,那就是没有配置JAVA_HOME 的环境变量)④、在浏览器中输入http://localhost:8080注意:Tomcat 启动不了的时候注意配置JAVA_HOME:C:\ProgramFiles\Java\jdk1.6.0_43这是安装JDK的根目录回到顶部3、Tomcat 的目录结构4、部署项目的第一种方法(项目直接放入webapps 目录中)1、将编写并编译好的web项目(注意要是编译好的,如果是eclipse,可以将项目打成war 包放入),放入到webapps 中2、启动tomcat服务器(双击apache-tomcat-6.0.16\bin 目录下的startup.bat,启动服务器)3、在浏览器输入:http://localhost:8080/项目名/访问的文件名5、部署项目的第二种方法(修改conf/server.xml 文件)①、打开tomcat下conf/server.xml,在1path:浏览器访问时的路径名docBase:web项目的WebRoot所在的路径,注意是WebRoot的路径,不是项目的路径。
其实也就是编译后的项目reloadble:设定项目有改动时,tomcat是否重新加载该项目②、双击startup.bat,启动tomcat 服务器,然后在浏览器输入访问的项目名称路径注意:如果你配置的path="/xx",那么访问的时候就是这样:6、部署项目的第三种方法(apache-tomcat-7.0.52\conf\Catalina\localhost )①、进入到apache-tomcat-7.0.52\conf\Catalina\localhost 目录,新建一个项目名.xml 文件②、在那个新建的xml 文件中,增加下面配置语句(和上面的是一样的,但是不需要path 配置,加上也没什么用)1③、在浏览器输入路径:localhost:8080/xml文件名/访问的文件名总结:①、第一种方法比较普通,但是我们需要将编译好的项目重新copy 到webapps 目录下,多出了两步操作②、第二种方法直接在server.xml 文件中配置,但是从tomcat5.0版本开始后,server.xml 文件作为tomcat 启动的主要配置文件,一旦tomcat 启动后,便不会再读取这个文件,因此无法再tomcat 服务启动后发布web 项目③、第三种方法是最好的,每个项目分开配置,tomcat 将以\conf\Catalina\localhost 目录下的xml 文件的文件名作为web 应用的上下文路径,而不再理会中配置的path 路径,因此在配置的时候,可以不写path。
使用Apache配置Tomcat集群(JA V A WEB应用) 1. 相关软件
Apache2.2 + Tomcat5.5
tomcat-connectors-1.2.37-windows-i386-httpd-2.2.x.zip
2.配置Apache httpd.conf
3.http.conf 同目录下新建mod_jk.conf文件
4.http.conf同目录下新建workers.properties文件
5.负载均衡配置完成,还需要配置Session同步:
在各台tomcat server上配置server.xml配置:
5.1将以下注释放开,并且修改jvmRoute为上述配置中对应的tomcat1,tomcat2,tomcat3....
5.2将以下内容注释掉
5.3将注释放开即可,
同一台机多个tomcat的情况下,也需要修改端口。
每个tomcat下都必须部署应用。
每个应用的path都必须一样。
重启tomcat,重启Apache
5.4 在应用的web.xml中加入<distributable/>标签
属性说明:
sticky_session:会话粘性标志,如果为true,当用户通过浏览器A与tomcat1开始了一个会话以后,只要以后用户还是从浏览器A发出的请求并且仍处于一个会话中,loadbalancer就会始终让tomcat1来处理。
直观地理解,一个session始终与集群系统中的一个tomcat粘在一起。
当sticky_session=true时,集群系统不会进行会话复制。
默认值为true。
sticky_session_force:当浏览器已经和集群系统中的tomcat1粘在一起了,当session展开后tomcat1异常终止了,此时如果sticky_session_force=false,loadbalancer会将请求转发给集群中其他的tomcat服务器。
如果sticky_session_force=true,客户端会报500错误。