您的位置:首页 > 运维架构 > Tomcat

Tomcat工作原理

2016-07-14 14:44 465 查看
一、apache-tomcat方式:

配置文件:server.xml

主要配置项:

1、Server:

<Server port="8005" shutdown="SHUTDOWN"> </Server>


指定8005端口,监听关闭tomcat进行的请求。

2、 Connector:共两个,定义客户端和服务器之间的连接。获取客户端发起的请求后,转交给Engine处理,然后将回应返回给客户端。

  第一个监听80端口(若只有tomcat,没有apache,此处监听的是8080端口),直接接收来自客户端浏览器的请求。若请求使用了SSL(https),则使用8443端口。

<Connector port="80" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />


第二个监听8009端口,接收通过其他WebServer(如apache)转发来的http请求。

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />


3、Engine:定义虚拟主机

Host定义虚拟主机名,appBase定义应用程序存放目录。

<Host name="localhost"  appBase="webapps"
unpackWARs="true" autoDeploy="true">


Engine中可以定义多个Host,当Engine收到http请求时会匹配到一个虚拟主机,由该虚拟主机来处理。如果没有匹配到一个虚拟主机,则将该请求交给默认设置的虚拟主机来处理。

以上配置时,例如应用程序存放目录为:webapps/hello/index...,则访问url为localhost/hello。

二、apache-tomcat处理http请求的过程:

1、客户端直接请求80/8080端口(或者由8009端口接收由apache等其他WebServer转发来的请求),Connector接收客户端请求。

2、Connector将http请求交给Engine。

3、Engine收到请求后,匹配到对应的Host,将该请求交给该Host处理。

4、Host处理请求,并将结果原路返回。

5、Connector接收到处理的结果后,返回给客户端或其他WebServer。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: