`

Tomcat学习笔记2

阅读更多

3.Tomcat上部署ServletJSP web应用程序

Tomcat的配置文件总是称web应用程序为contextTomcat的主配置文件server.xml中有一个叫ContextXML元素,代表了web应用程序的配置。对每个显式配置的web应用程序,server.xml或分开的context XML片段,应有一个context元素。

 

为了在Tomcat中部署应用程序,必须在Host主机下部署。

常见的server.xml中有一个默认主机名localhost,该Host是默认的Host,也是唯一的Host。意味着进入TomcatHTTP请求都将映射到该主机上。

如要将应用程序部署到A.com主目录下,必须给A.com配置好Tomcat。仅需编辑server.xml。并查找到第一个定义<Host >XML元素,然后在它上面追加新的<Host>即可。

<Host name=”A.com” appBase=”webapps” unpackWARs=”true” autoDeply=”true” xmlValidation=”false” xmlNamespaceAware=”false”>

</Host>

<Host name=”localhost” appBase=”webapps” unpackWARs=”true” autoDeply=”true” xmlValidation=”false” xmlNamespaceAware=”false”>

</Host>

若服务器请求A.com,还应改变<Engin>的默认主机名。在server.xml中:

<Engin name=”catalina” defaultHost=” A.com”>

 

Tomcat在运行时,支持无需重启而部署应用程序,也可解除对应用程序的部署:热部署Hot Deployement

只需将host中的autoDeploy=true即可。为此,一般无需在启动时部署应用程序,此时将deployStartup=false,否则应用程序启动2次。

若采用编辑server.xml形式,则需重启Tomcat才会生效。

 

Web应用程序部署在Tomcat可以采用2种形式:解包目录和WarWeb application aRchive,应用程序归档文件)包。解包目录webappa的优点是类、XMLJSP都是单个文件,很容易判断哪个文件出错。

 

Tomcat固定了Web应用程序的布局,即War的文件格式和布局:

根目录下有index.jsp+WEB-INFWEB-INF下有libclassesweb.xml。其中lib用于存放Jar包,classes存放Java class文件,web.xml是部署描述文件,包含web应用程序的配置信息,该文件提供给servlet-mapping,设定servlet对应的URI

 

Context部署

<Host name=”A.com” appBase=”webapps” unpackWARs=”true” autoDeply=”false” xmlValidation=”false” xmlNamespaceAware=”false”>

    <Context docBase=”my-webapp” path=”/my-webapp”>

</Host>

Tomcat启动后,会在my-webapp”路径下查找web应用程序对应的目录,并部署到URI/my-webapp的路径下。

然后可以采用http://locaohost:8080/my-webapp访问。

 

生成WAR文件的命令:jar –cvf X.war 打包目录,如.

 

JavaTomcat社区,Ant是自动部署的标准工具。

Ant自动运行其他程序,可以执行非Java程序。

AntJava编写,有可靠的JVM,执行其他的Java功能也会灰常迅速。

Ant会读入XML格式的构建(build.xml)文件,以寻找要执行的命令。build.xml包含一个项目的定义,及很多的target(类似于子程序),其中一个是默认的目标。

Ant上可以用名字执行任何目标,默认执行run.

 

4.Tomcat性能调校

Web负载测试工具:apache Benchmark siege(命令行工具)、apache JakartaJMeter(图形界面)。

基于命令行的调校工具是ab

 

Ab调试工具接受单一的URL,重复的按照我们制定的多独立线程的方式加载它,并使用各种不同的命令行参数来控制访问的次数、最大的并发访问次数。可以定期打印进度报告,输出十分详细的报告。

Ab –k –n 100000 –c 149 URL

用最多149个并发线程,执行URL100000次。

默认150个并发线程。

-k keep live,保持与Tomcat保持联机

 

同样的需求,siege的命令行是:

Siege –b –r 671 –c 149 tomacathost:8080

671*149100000

同种情况下优先使用ab

 

JMeter

运行图形界面:bin/jmeter

 

安全防护的关键部分是加密处理。

阻断私有或内部网络端口,避免公网访问是很重要的。使用系统的防火墙安全防护机制,能限制Tomcat访问连接的端口。在80端口上激活Tomcat需要root权限,停止服务却不要。

 

5.配置

Tomcat主要通过编辑文件及重启Tomcat来实现Tomcat配置。

Cong目录下的配置文件主要有:

Server.xmlTomcat主配置文件

Web.xmlservlet配置文件

Tomcat-users.xmlTomcatUserDatabase Realm用于认证的默认角色、用户及密码清单

Catalina.policyTomcatJava安全策略文件

Context.xml:应用于安装了Tomcat的所有主机的所有部署内容

 

Tomcat以面向对象的方式运作,在执行期间,基于配置文件的设定动态组建对象结构。Server.xml文件中的每个主要元素都会创建对象、排序。

 

Server代表tomcat自己,每个server.xml文件只有一个这个元素

Service:共享引擎Engin的连接器

Executor:一个或多个Connector的共享线程池

ConnectorWeb服务器

Engin:处理所有请求

Host:一台虚拟主机

Context:在Host配置一个web应用程序

Realm:设置用户和角色

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics