Tomcat服务器原理 Tomcat服务器的处理过程是怎样的呢?它的多线程处理机制又是怎样的?各位牛人进来讨论下。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 此回复为自动发出,仅用于显示而已,并无任何其他特殊作用楼主【hhz019】截止到2008-07-17 14:30:05的历史汇总数据(不包括此帖):发帖的总数量:24 发帖的总分数:670 每贴平均分数:27 回帖的总数量:24 得分贴总数量:1 回帖的得分率:4% 结贴的总数量:5 结贴的总分数:70 无满意结贴数:0 无满意结贴分:0 未结的帖子数:19 未结的总分数:600 结贴的百分比:20.83 % 结分的百分比:10.45 % 无满意结贴率:0.00 % 无满意结分率:0.00 % 楼主该结一些帖子了 Tomcat处理http假设来自客户的请求为:http://localhost:8080/wsota/wsota_index.jsp1) 请求被发送到本机端口8080,被在那里侦听的Coyote HTTP/1.1 Connector获得2) Connector把该请求交给它所在的Service的Engine来处理,并等待来自Engine的回应3) Engine获得请求localhost/wsota/wsota_index.jsp,匹配它所拥有的所有虚拟主机Host4) Engine匹配到名为localhost的Host(即使匹配不到也把请求交给该Host处理,因为该Host被定义为该Engine的默认主机)5) localhost Host获得请求/wsota/wsota_index.jsp,匹配它所拥有的所有Context6) Host匹配到路径为/wsota的Context(如果匹配不到就把该请求交给路径名为""的Context去处理)7) path="/wsota"的Context获得请求/wsota_index.jsp,在它的mapping table中寻找对应的servlet8) Context匹配到URL PATTERN为*.jsp的servlet,对应于JspServlet类9) 构造HttpServletRequest对象和HttpServletResponse对象,作为参数调用JspServlet的doGet或doPost方法10)Context把执行完了之后的HttpServletResponse对象返回给Host11)Host把HttpServletResponse对象返回给Engine12)Engine把HttpServletResponse对象返回给Connector13)Connector把HttpServletResponse对象返回给客户browser 才发觉,imA的头像和id配合的好棒 最有效的办法,去下一个TOMCAT的工程源代码,不能是只有SRC的文件夹,还要有写TOMCAT时的属性文件,ANT文件,配置文件等等,用eclipse把源代码导入,再往工程里导入TOMCAT所需的相应的JAR,用ANT编译好后,右键点击TOMCAT项目,选择Run As下的Open Run Dialog,这时弹出Run菜单,点开Java Application,点击选择TOMCAT6,Main选项卡里的Project选择你导入的TOMCAT源代码的项目名,Mian Class填入org.apache.catalina.startup.Bootstrap,在Arguments选项卡,Program Arguments填入参数start,VM Arguments填入参数-Dcatalina.home=“这里填写你源文件所在的路径”。这样基本就配置好了,在configure Server里把TOMCAT配置好,注意,这里的TOMCAT是咱们用源代码生成的TOMCAT。配置好后,你就可以打开你的Eclipse,在TOMCAT的源文件里随意设置断点了,在启动时就可以跟踪TOMCAT的全过程。 就向是二楼说的Tomcat处理http 假设来自客户的请求为: http://localhost:8080/wsota/wsota_index.jsp 1) 请求被发送到本机端口8080,被在那里侦听的Coyote HTTP/1.1 Connector获得 2) Connector把该请求交给它所在的Service的Engine来处理,并等待来自Engine的回应 3) Engine获得请求localhost/wsota/wsota_index.jsp,匹配它所拥有的所有虚拟主机Host 4) Engine匹配到名为localhost的Host(即使匹配不到也把请求交给该Host处理,因为该Host被定义为该Engine的默认主机) 5) localhost Host获得请求/wsota/wsota_index.jsp,匹配它所拥有的所有Context 6) Host匹配到路径为/wsota的Context(如果匹配不到就把该请求交给路径名为""的Context去处理) 7) path="/wsota"的Context获得请求/wsota_index.jsp,在它的mapping table中寻找对应的servlet 8) Context匹配到URL PATTERN为*.jsp的servlet,对应于JspServlet类 9) 构造HttpServletRequest对象和HttpServletResponse对象,作为参数调用JspServlet的doGet或doPost方法 10)Context把执行完了之后的HttpServletResponse对象返回给Host 11)Host把HttpServletResponse对象返回给Engine 12)Engine把HttpServletResponse对象返回给Connector 13)Connector把HttpServletResponse对象返回给客户browser 其实tomcat中的设计细节问题很多,从源代码中有很多技术细节可以研究。 有本书叫做 How Tomcat Works 虽然有点老了,但原理基本上差不多。不过最新的 tomcat 底层已经重新改写过了。 linux apache同时配置 tomcat weblogic Java 文件压缩问题, 在线等解 截取字符串 java 数据源的问题 hibernate中的问题 跪求,用javascript可不可以把html编码转换成文字 高分求解程序:如何操作指定路径下的文件 如何理解thread-safe 800分问2个问题,如果搞不定up有分 求助各位大神,这个报错可能是什么问题?求教! 【传智播客100多集的struts+spring 2.5+jpa大型项目(巴巴运动网)实战视频教程】 对于一个web工程,用maven2生成的war包,里面应该是.class文件,为什么是.java文件呢?
楼主【hhz019】截止到2008-07-17 14:30:05的历史汇总数据(不包括此帖):
发帖的总数量:24 发帖的总分数:670 每贴平均分数:27
回帖的总数量:24 得分贴总数量:1 回帖的得分率:4%
结贴的总数量:5 结贴的总分数:70
无满意结贴数:0 无满意结贴分:0
未结的帖子数:19 未结的总分数:600
结贴的百分比:20.83 % 结分的百分比:10.45 %
无满意结贴率:0.00 % 无满意结分率:0.00 %
楼主该结一些帖子了
http://localhost:8080/wsota/wsota_index.jsp1) 请求被发送到本机端口8080,被在那里侦听的Coyote HTTP/1.1 Connector获得2) Connector把该请求交给它所在的Service的Engine来处理,并等待来自Engine的回应3) Engine获得请求localhost/wsota/wsota_index.jsp,匹配它所拥有的所有虚拟主机Host4) Engine匹配到名为localhost的Host(即使匹配不到也把请求交给该Host处理,因为该Host被定义为该Engine的默认主机)5) localhost Host获得请求/wsota/wsota_index.jsp,匹配它所拥有的所有Context6) Host匹配到路径为/wsota的Context(如果匹配不到就把该请求交给路径名为""的Context去处理)7) path="/wsota"的Context获得请求/wsota_index.jsp,在它的mapping table中寻找对应的servlet8) Context匹配到URL PATTERN为*.jsp的servlet,对应于JspServlet类9) 构造HttpServletRequest对象和HttpServletResponse对象,作为参数调用JspServlet的doGet或doPost方法10)Context把执行完了之后的HttpServletResponse对象返回给Host11)Host把HttpServletResponse对象返回给Engine12)Engine把HttpServletResponse对象返回给Connector13)Connector把HttpServletResponse对象返回给客户browser
http://localhost:8080/wsota/wsota_index.jsp 1) 请求被发送到本机端口8080,被在那里侦听的Coyote HTTP/1.1 Connector获得 2) Connector把该请求交给它所在的Service的Engine来处理,并等待来自Engine的回应 3) Engine获得请求localhost/wsota/wsota_index.jsp,匹配它所拥有的所有虚拟主机Host 4) Engine匹配到名为localhost的Host(即使匹配不到也把请求交给该Host处理,因为该Host被定义为该Engine的默认主机) 5) localhost Host获得请求/wsota/wsota_index.jsp,匹配它所拥有的所有Context 6) Host匹配到路径为/wsota的Context(如果匹配不到就把该请求交给路径名为""的Context去处理) 7) path="/wsota"的Context获得请求/wsota_index.jsp,在它的mapping table中寻找对应的servlet 8) Context匹配到URL PATTERN为*.jsp的servlet,对应于JspServlet类 9) 构造HttpServletRequest对象和HttpServletResponse对象,作为参数调用JspServlet的doGet或doPost方法 10)Context把执行完了之后的HttpServletResponse对象返回给Host 11)Host把HttpServletResponse对象返回给Engine 12)Engine把HttpServletResponse对象返回给Connector 13)Connector把HttpServletResponse对象返回给客户browser