WEB应用程序从TOMCAT移植到WAS
- 格式:docx
- 大小:16.10 KB
- 文档页数:1
用Tomcat 和Eclipse开发Web 应用程序(部署+发布)配置用Tomcat 和Eclipse开发Web 应用程序(部署+发布)配置。
(/developerworks/cn/opensource/os-eclipse-tomcat/)创建一个新的 Web 项目从 Eclipse IDE,选择File > New > Project查看项目向导。
在 Wizards 框,输入 Web,而 New Project 窗口会过滤向导以只显示匹配的那些项。
利用这种方法可以很容易找到向导,而无需遍历每一项。
从列表中选择Dynamic Web Project。
我们要使用 Standard Web Project Wizard 来建立静态 HTML Web 项目。
虽然您也可以在技术上使用 Tomcat 运行静态Web 站点,但 Web 服务器,比如 Apache Web Server 更适合于静态内容。
专门为服务于静态页面而设计的 Web 服务器拥有的开销更少,且专为此目的作了调优。
以运行库为目标在Target Runtime下,可以看到 <None>,如图 4 所示,由于您尚未为 Apache Tomcat 创建运行库,所以需要单击New打开New Target Runtime Wizard。
从 Apache 文件夹中选择 Apache Tomcat V5.5,如图 5 所示,然后单击Next。
图 4.创建一个新的动态 Web 项目图 5.创建一个新的服务器运行库现在,您可以命名此运行库,当然保留 Apache Tomcat V5.5 的默认名也可以。
单击Browse来定位用于 Apache Tomcat 配置的基本文件夹(我的是C:\apps\apache-tomcat-5.5.20,如图 6 所示)。
若无特殊原因,我建议不要更改,保留IBM® Java Runtime Environment (JRE) 版本作为工作台的默认 JRE。
Tomcat服务器部署JavaWeb项⽬War包基本步骤1. 基本常识:1.1 War包War包⼀般是在进⾏Web开发时,通常是⼀个⽹站Project下的所有源码的集合,⾥⾯包含前台HTML/CSS/JS的代码,也包含Java的代码。
(项⽬已经开放结束,基本很少改动)当开发⼈员在⾃⼰的开发机器上调试所有代码并通过后,为了交给测试⼈员测试和未来进⾏产品发布,都需要将开发⼈员的源码打包成War 进⾏发布。
War包可以放在Tomcat下的webapps或者word⽬录下,随着tomcat服务器的启动,它可以⾃动被解压。
Jar⽂件(扩展名为. Jar,Java Application Archive)包含类的普通库、资源(resources)、辅助⽂件(auxiliary files)等 War⽂件(扩展名为.War,Web Application Archive)包含全部Web应⽤程序。
在这种情形下,⼀个Web应⽤程序被定义为单独的⼀组⽂件、类和资源,⽤户可以对jar⽂件进⾏封装,并把它作为⼩型服务程序(servlet)来访问。
Ear⽂件(扩展名为.Ear,Enterprise Application Archive)包含全部企业应⽤程序。
在这种情形下,⼀个企业应⽤程序被定义为多个jar⽂件、资源、类和Web应⽤程序的集合。
JAR WAR EAR英⽂Java Archive file Web Archive file Enterprise Archive file包含内容class、properties⽂件,是⽂件封装的最⼩单元;包含Java类的普通库、资源(resources)、辅助⽂件(auxiliary files)等Servlet、JSP页⾯、JSP标记库、JAR库⽂件、HTML/XML⽂档和其他公⽤资源⽂件,如图⽚、⾳频⽂件等除了包含JAR、WAR以外,还包括EJB组件部署⽂件application-client.xml web.xml application.xml容器应⽤服务器(application servers)⼩型服务程序容器(servlet containers)EJB容器(EJB containers)级别⼩中⼤1.2 Tomcat服务器Tomcat 服务器是⼀个免费的开放源代码的Web 应⽤服务器,属于轻量级应⽤,在中⼩型系统和并发访问⽤户不是很多的场合下被普遍使⽤,是开发和调试JSP 程序的⾸选。
Eclipse 远程调试 WebSphere Application Server (WAS)我们用 Eclipse 开发 Web 项目时,多会用某个插件(如 MyEclipse) 来对Tomcat 中的应用进行单步调试。
而要调试 WAS 下的应用,MyEclipse 也是可以的,但在 MyEclipse 中启动 WAS 比较慢,且需要在本地安装一个 WAS。
再有便捷点的方法是用 WSAD (Websphere Studio Application Developer) 或它的升级版 RAD (Rational Application Developer),它们内置了对 WAS 很好的支持,不过也需要本机安装了 WAS,WSAD/RAD 肥大的身躯自是不必说。
若要让 WSAD/RAD 进行远程调试,似乎还得在Server 上安装个 IBM Agent Controller。
实际上 WAS 就支持远程调试的设置,打开它,你只需要用 Eclipse Debug 中的 Remote Java Application 功能连接到服务器上相应端口即行。
设置很简单,这样的办法你甚至可以在闲时偷偷的调试一下生产环境的 WAS 应用以验证测试环境难以/无法重现的问题。
具体做法如下(WAS 5.x 和 6.x 下的操作基本相同):一:配置 WAS,打开调试服务进到 WAS(或ND) 的管理控制台,在服务器->应用程序服务器中,点击要启用调试服务的应用服务器,然后进入调试服务,勾选上启动(指定当服务器启动时服务器是否将尝试启动指定的服务。
)。
JVM 调试端口默认为 7777,注意该端口不能有冲突(如有多个应服务器要启用调试服务时,需要指定别的端口)。
其他选项默认,或根据实际来设定。
确定、保存后重启应用服务器,WAS Base 版需要回到操作系统下重启,如果是在 ND 管理控制台下,可直接在页面中重启应用服务器。
Web application server 网络应用服务器-----WASClient (客户端)Server (服务器)Business logic server (业务逻辑服务器)DBMS Server (数据库服务器)Business Object Server (业务对象服务器)Navigator (一个浏览器)Microsoft IE (微软的一个浏览器IE)Web Client (网络客户端)Apache (是世界排名第一的WEB服务器软件)Microsoft IIS (Internet Information Services 互联网信息服务)微软件互联网信息服务亦是一种WEB服务器,可参考“微软件的IIS会对APACHE构成胁吗?”一文。
Application Server(应用服务器)HTTP(Hypertext transfer protocol)超文本转移协议(HTTP-Hypertext transfer protocol) 是一种详细规定了浏览器和万维网服务器之间互相通信的规则,通过因特网传送万维网文档的数据传送协议。
Servlet是在服务器上运行的小程序。
它通常用于在客户端运行,结果得到为用户进行运算或者根据用户互作用定位图形等服务。
常常是根据用户输入访问数据库的程序。
这些通常是使用公共网关接口(CGI(Common Gateway Interface))应用程序完成的。
JSP(Java Server Pages) 是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。
Servlet与JSP的区别可参见“Servlet与JSP的区别”一文。
是一项微软公司的技术,是一种使嵌入网页中的脚本可由因特网服务器执行的服务器端脚本技术。
RMI(Remote Method Invocation,远程方法调用),可参见“远程调用的几种方式”一文。
Tomcat部署Web项⽬的3种⽅式⼀、将war包丢进webapps 这是最简单粗暴的⽅式:将web⼯程打成war,丢进tomcat/webapps⽬录即可,tomcat会⾃动解压。
⽆需修改任何配置⽂件即可完成部署。
这⾥我准备了tomcat8.5.43与dubbo控制台的war包来做测试。
①启动tomcat ②将war丢进webapps⽬录,tomcat会⾃动解压该war包。
浏览器直接访问:localhost:8080/dubbo-admin-2.5.10,说明我们的war包部署成功!(访问路径为war包的名称)⼆、配置Server.xml部署Web⼯程 修改配置⽂件⽆需我们打war,这样⽅便开发,结合可以实现快速开发。
编辑server.xml 添加如下:<Context docBase="D:\test\dubbo-admin-2.5.10" path="/test" reloadable="false" />(访问路径为path内容) 通过浏览器访问:localhost:8080/test 在D:\test\apache-tomcat-8.5.43\conf\Catalina\localhost:添加testA.xml 添加如下内容:<?xml version="1.0" encoding="UTF-8"?><Context docBase="D:\test\dubbo-admin-2.5.10" reloadable="false"/> docBase还是指向WEB⼯程的绝对路径。
此时启动tomcat,浏览器输⼊:localhost:8080/testA,说明部署成功!(访问路径为此XML的名称)四、注意点1.webapps/ROOT(将你的web⼯程名称改为ROOT即可实现缺省);2.server.xml中对应Context标签的path属性设置为"/";3.添加ROOT.xml即可实现WEB应⽤缺省。
运用WAST对Web应用程序进行压力测试邓先炳(岳阳职业技术学院计算机系,湖南岳阳414000)摘要:压力测试是Web应用开发周期中的一个重要步骤。
使用WAST工具对Web进行压力测试,能检测出服务器配置潜在问题,以及Web应用程序的潜在缺陷。
同时,可以获得重要的性能数据,为代码优化、硬件配置、系统软件升级提供必要的依据。
关键词:WAST;Web应用程序;压力测试中图分类号:TP311.53文献标志码:A文章编号:1672-738X(2008)03-0072-03收稿日期:2008-04-16作者简介:邓先炳(1962-),男,湖南岳阳人,岳阳职业技术学院副教授。
研究方向:计算机网络技术。
1引言由于我们无法了解单位时间内Web程序访问和运行的速度,互联网Web应用用户在开发设计的时候需要格外谨慎。
程序设计完成以后,针对程序进行严格甚至是苛刻的测试,以确定程序在复杂的网络环境和服务器高压负荷下保持正常和相对稳定的效率,显得尤为重要。
该测试目的有二:其一,通过了解Web应用于现实的网络环境中是否可以正确而安全的处理各种用户提交的不确定请求,从而检验程序的健壮性;另一目的是通过对服务器故意提供足够多的请求,观察程序的反应能力。
笔者建议,用于商业应用的Web应用程序,最好在正式提交客户之前进行比较完备的压力测试,并且根据测试及时优化程序或者合理配置服务器硬件,以确保网站在用户量急剧增加的情况下正常运行。
2wast介绍WAST(MicrosoftWebApplicationStressTool)是一套由微软网站测试人员开发、专门用来进行实际网站压力的测试工具。
通过使用这套功能强大的压力测试工具,我们可以在网站实际应用之前,使用少量的Client端计算机仿真大量用户测试网站服务可能造成的影响,以找出系统潜在的问题,对系统进行调整合和优化。
WAST具有以下主要特点:1)数种不同的方式建立测试指令:手动、录制浏览器操作步骤、直接录入IIS的记录文件、录入网站的内容及录入其它测试程序的指令等方式;2)支持多种客户端接口:标准的网站应用程序C++的客户端;ActiveServerPage客户端;WebApplicationStress对象模型建立自定接口;3)支持使用动态的cookie仿真定制网站实际运作场景及对话(session);4)通过集中式的MicrosoftWebApplicationStress管理员,可以使用任意数目的客户端计算机同时进行测式的工作;5)具有Bandwidththrottling(带宽遏流)的功能,以仿真用户身份使用调制解调器上线的效果;6)提供汇总后的测试报告及丰富的性能测试资料;7)使用Pagegroup的方式来控制文件组及测试指令的执行程序;8)自定指令延迟,以更接近真实环境的方式进行测试。
目录一.安装准备 (3)1. 1变量安装目录 (3)1. 2服务器服务端口 (3)1. 3修改hosts文件 (3)二.安装websphere (3)2. 1 将websphere 安装包解压 (3)2. 2 创建概要文件 (8)2. 3 IHS的安装 (8)2. 4启动IHS (13)2. 5添加webserver (13)2. 6优化主配置文件 (14)三. 增加并启动节点: (14)3. 1 向管理端添加节点 (14)3. 2 启动节点 (14)四. 创建集群 (15)4. 1 创建集群 (15)4. 2 在一个集群上部署两个server, (17)4. 3 虚拟主机 (18)五.创建jdbc和数据源 (19)5. 1 创建JDBC (19)5. 2 创建数据源 (22)六. Was参数优化 (25)6. 1 java虚拟机 (25)6. 2 JDBC连接池 (25)6. 3 WebSphereApplicationServer数据源属性 (26)6. 4 Web容器线程池 (27)七. 部署应用 (27)7. 1 部署应用 (27)7. 2 生成plugin (28)一.安装准备1. 1变量安装目录应用服务器:wyapp01 63.1.1.101wyapp02 63.1.1.102<W AS_ND_HOME> /usr/IBM/WebSphere/AppServer//usr/IBM/WebSphere/AppServer/profiles/AppSrv01 WebSphere 应用服务器/usr/IBM/WebSphere/AppServer/profiles/Dmgr WebSpheer应用服务器网络部署Web服务器:<WEB_HOME>/usr/IBM/WebSphere<Plugin_HOME> /usr/IBM/WebSphere/Plugin Web插件路径启动程序路径:/usr/IBM/WebSphere/bin/apchectl主配置文件:/usr/IBM/WebSphere/config/httpd.conf1. 2服务器服务端口管理控制台端口:9060应用服务端口:Pweb 9081Eweb 9083Mweb 90841. 3修改hosts文件分别修改两台应用服务器的hosts文件Vi /etc/hosts添加如下内容:63.1.1.101 wyapp0163.1.1.102 wyapp0261.1.1.101 wyweb0161.1.1.102 wyweb0261.1.1.103 raserver63.1.1.103 wydb_src1.4安装浏览器,Was 在aix 上安装需要浏览器支持,建议去IBM官方下载火狐浏览器二.安装websphere2. 1 将websphere安装包解压进到解压目录下的W AS目录,运行安装程序install.sh如下图:单击“下一步”接受本软件的安装协议,点击“下一步”,进入系统条件检查点击“下一步”点击“下一步”把“应用程序服务器样本“去掉点击”下一步“选择安装的目录” /usr/IBM/WebSphere/AppServe”点击“下一步”选择安装产品出现was nd 安装摘要。
tomcat 项目迁移到weblogic本篇文章主要介绍了"tomcat 项目迁移到weblogic",主要涉及到tomcat 项目迁移到weblogic方面的内容,对于tomcat 项目迁移到weblogic感兴趣的同学可以参考一下。
【藏】Spring与weblogic jndi集成至于如何配置hibernate,就和平时该怎么配置就怎么配置了。
虽然spring本身是可以直接使用jndi来进行获取一些对象,但是在和w eblogic集成的时候往往还是容易出现问题(在w eb应用的时候出现问题的可能性不大,因为container已经做了很多事情了.)但是在ide或者其他的应用环境下(不同的jv m的时候),通常找不到provider_ur l等属性造成无法找到jndi.修改配置文件如下:<!-- 通过jndi的方式来调用datasource,即使不一定是在j2ee环境中也可以正常使用默认情况下,如果没有指定,"java:comp/env/"将放在后面jndi名称前面--><bean id="dataSource" class="or g.springframew ork.jndi.JndiObjectFactoryBean"><property name="jndiName"><value>jdbc/my Datasource</value></property><!-- 如果你不想使用'java:comp/env/'前缀的话请设置下面的值为true, 默认值为false --> <property name="resourceRef"><value>false</value></property><property name="jndiEnvironment"><props><!-- The value of Context.PROV IDER_URL --><prop key="java.naming.provider.url">t3://localhost:7001</prop><prop key="java.naming.factory.initial">w eblogic.jndi.WLInitialContextFactory</prop></props></property></bean>注意在设置的时候由于不在同一个jv m里面,所以一定要设置provider.url和factory.initial的属性值,否则会出现NoInitialContextE xception的异常出现.此外如果和其他的应用服务器集成的话可能不只是要设置上面的两个属性,还要设置相关的其他属性。
Web测试工具WAS认识实验一、实验目的1、了解W AS服务器负载测试软件的安装过程,进行安装实验。
2、了解W AS服务器负载测试软件的用途和简单的操作。
3、掌握W AS服务器负载测试软件测试过程。
4、能够使用W AS服务器负载测试软件进行简单的测试工作。
二、实验环境操作系统:windows 2000 Pro + SP4应用系统:WAS服务器负载测试软件三、实验过程随着网络服务器端处理任务的日益复杂,以及网站访问量的迅速增长,服务器性能的优化已成为非常迫切的任务。
在性能优化之前,测试不同条件下服务器的性能表现,并找出影响性能瓶颈所在,将是Web设计性能改善方案的重要依据。
在构造一个Intranet 网站时,负载测试是任何Web 应用开发周期中一个重要的环节。
在构造一个为大量用户服务的应用之前,搞清楚产品配置能够承受多大的负载十分重要,测试能够暴露出最终会导致服务器崩溃的内存泄漏、访问阻塞等情况。
但是在实际的构建过程中,若要按照系统真实运行的情况,组织成千上万的用户来进行压力测试,无论从那个方面进行实施,都是不现实的。
因为一旦发现了问题,不仅需要重复的进行这种耗费资源巨大的测试,而且问题并一定能够重现,并不能方便的找出性能的瓶颈或问题所在。
解决这个问题的办法是通过使用软件的办法解决,通过进行软件模拟的方法进行,这就是负载的压力测试。
无论哪种情形,对运用软件进行负载测试可以获得重要的基准性能数据,为未来的代码优化、硬件配置以及系统软件、硬件更新与升级带来依据和提供数据。
1 Web服务器负载测试软件介绍WAS(Microsoft Web Application Stress Tool,Web 应用负载测试工具)提供了一种简单的方法模拟大量用户进行访问目标网站。
这个测试工具能够提供Web 应用程序工作时对硬件和软件的使用情况。
为了有效的对Web 应用程序进行负载(压力)测试,Microsoft发布了简单易用,功能强大的工具WAS。
Web应用程序从Tomcat移植到WAS
为了方便起见,示范中心项目一直在Tomcat 4.1+Mysql 4.0的环境下开发。
现在客户提出运行环境将是WAS 5.1+DB2 8.0,在移植的过程中发现现有的程序存在两个问题。
1、在Tomcat下类似edit.do?service这样的url,使用request.getParameter("service")可以得到非空值,但在WAS下则得到空值,必须使用edit.do?service=1这样的完整形式。
2、原先有一些不太规则的标签写法,比如下面这个:
<bean:define id="toDel" name="client" property="name" type="String"/> <html:link action="/delete" paramId="code" paramName="client" paramProperty="code" onclick="<%="return
confirmDelete('"+toDel+"');"%>">
<html:img page="/../images/btn_del.gif" width="41" height="16" border="0"/>
</html:link>
在Tomcat里是正常的——当用户点击“删除”时提示“是否确认删除XXX?”,但在WAS里含有这个代码的页面都会无法通过编译,只能把提示内容后面的XXX去掉。
我觉得struts 内置的标签库对字符串的操作实在有限。
除去这两点,暂时没有发现其他不兼容之处。
想不明白的是,既然Tomcat是Servlet 2.3的参考实现,就应该是最“标准”的,为何还会出现这种情况,是Tomcat有自己的扩展,还是WAS的实现有不足呢?。