Window XP下Tomcat6.0与IIS5.0集成
Tomcat6.0为什么要与IIS5.0集成?首先IIS5.0对于HTML的解析性能要比tomcat要好,这个我无从验证,是专家们说的。再个借助JK插件,可以使IIS能把web请求分别分发给不同的Tomcat容器处理,从而实现负载均衡。当然还有另一种实现方案,那就是Tomcat和Apache集成,这个我暂未研究。不过目的都是一样的,为了追求更高的性能以及合理的分配资源利用。下面说说我的实现步骤,其实学习过程中也是困难重重,也google了一番,很遗憾,要么是使用的Tomcat6.0,要么是在window2000环境下,因为XP系统只能安装IIS5.0,所以不符合我的要求,只好有的放失,自己慢慢摸索出来了。
首先你要安装好tomcat,并配置好其环境变量,这个就不介绍了,若你在浏览器地址栏输入http://localhost:8080/回车,能看到tomcat的标志性tom猫图片,表明tomcat安装成功。
然后安装IIS,由于我的系统是XP的,只能安装IIS5.0,IIS5.0的安装包我115网盘有共享,下面是其下载地址,如果已过期,请提醒我续期:
IIS_XPSP3.rar
IIS如何安装就不用我多说,不会的话,自己问google或者baidu.
保证tomcat和IIS都安装成功后,然后访问http://tomcat点apache点org下载JK插件,请如图操作:




下载下来后,解压得到一个isapi_redirect.dll文件,然后你在D盘新建个文件夹JK,当然文件夹名随便取,然后JK下新建3个子文件夹bin、conf、log,目录结构如图:

把isapi_redirect.dll文件copy到bin目录下,conf文件夹下新建两个properties配置文件:

workers.properties配置文件作用就是告诉IIS服务器,哪些主机的tomcat容器下的哪些web应用需要经过IIS过滤分配处理,内容编辑如下:
worker.list=MyOA
worker.MyOA.type=ajp13
worker.MyOA.host=localhost
worker.MyOA.port=8009
这里的worker.list就是你tomcat的webapps下的web应用名称,多个web应用之间可以用逗号分割,
type指定tomcat的某个web应用需要经过IIS的ajp1.3协议,
host指定当前的web应用所在主机,当然你有域名,你这里写个域名也行,没域名就写IP
port就是ajp协议监听的端口号
这里还可以配置web应用的负载均衡,下面是一个配置示例:
worker.list=wlb
worker.wlb.type=lb
worker.wlb.balance_workers=ajp13w
稍微解释下配置的含义:就是先声明了一个名称叫做wlb的负载均衡应用引擎,然后type=lb,lb就是表明使用的是负载均衡,balance_workers指定哪些web应用要交给负载均衡引擎来管理.
然后就是uriworkermap.properties的配置,它的作用就是告诉IIS,哪些web应用资源要经过IIS服务器来管理分发处理请求返回资源进行响应。
下面是一个配置示例:
/*.jsp=MyOA
/MyOA/*=MyOA
/*.do=MyOA
表示所有的jsp页面、所有.do请求,web应用MyOA下的所有资源文件都需要经过IIS服务器管理转发请求从而决定给哪个tomcat处理。
然后就是在isapi_redirect.dll文件的同级目录下新建个名称为isapi_redirect.properties配置文件,文件名称和文件定义路径都是固定死的,文件内容编辑如下:
#jakarta是IIS下的一个虚拟目录,即指定JK插件在IIS中对应的虚拟目录
extension_uri=/jakarta/isapi_redirect.dll
#JK插件生成的日志文件保存完成路径
log_file=D:\JK\log\isapi_redirect.log
#日志级别,其有效值有debug、info、warn、error、trace
log_level=debug
#workers.properties文件路径
worker_file=D:\JK\conf\workers.properties
#uriworkermap.properties文件完成路径
worker_mount_file=D:\JK\conf\uriworkermap.properties
上面已经有了相关注释,我就不再累赘了。
这些都搞定后,打开你的IIS管理器,如图操作:













IIS重启后,如果如图出现绿色箭头表示插件安装成功:

然后就是你新建个web应用程序,把他发布到tomcat中,进行测试:因为IIS默认端口号是80,而80端口是可以省略的,所以如果你的web应用程序在localhost后不指定8080端口号也能访问表明你的web应用已经首先经过IIS服务器处理,然后IIS根据配置把该请求转发给tomcat处理,最后tomcat返回响应给客户端,就是这样一个过程,当然你可以把你一个web应用的部分请求分配给A机子上的tomcat处理,另一部分请求分配给B机子上的tomcat处理,从而解决服务器压力过大的问题。当然如果你把tomcat的server.xml中的connector配置去掉,还可以阻止用户直接通过请求tomcat获得资源,也就是说这样配置后你的web应用必须经过IIS才能访问,安全性就高了。

最后我把tomcat容器中以前部署的web项目拿来进行了一下测试,测试效果如图:


到此,Tomcat6.0与IIS5.0集成成功啦!很有成就感哈哈!因为网上搜到的要么是在window server2000环境下,要么是使用的tomcat版本不一致,要么就是使用的JK2.0插件,还有什么修改注册表的,反正我没搜到在XP环境下对它们进行集成的介绍!在此我就抛砖引玉一下哈, 嘻嘻
本文来源 我爱IT技术网 http://www.52ij.com/jishu/87.html 转载请保留链接。
- tuxedo window 安装
- 阅读JAVA GUI (windowsbuilder)源码案例 挑战两个
- Python 于MS-Windows 的命令列路径设置
- 值得学习Windows phone UI虚拟化和数据虚拟化
- Windows Phone 8开发之测试并向应用商店提交案例
- Windows高DPI的总结现在就送给你吧
- 谈谈Windows 8/8.1 及 Windows Phone 8 应用神器
- windows下java命令浅浅谈 javac、java和javap详细
- 一个莱鸟程序员的学习经历——wml到windowsphone8
- windows2003+mscs+faiedsafe+oracle 双机操作心得
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
