Tomcat研究 -- 整体框架

周五、周六、周天 深入学习 Tomcat 时间,从书上、csdn资料上做一些搞录,整理成自己的笔记。
 
首先列出以下一些框架中的东东: server serviec Connector,HTTP,AJP container,Engine,Host,Context,Component,manager,Logger,Loader,pipeline,valve
1 )、 server :其实就是 backGroud 程序,在 Tomcat 里面的用处是启动和监听服务端事件(如重启、关闭等)
2 Service :在 Tomcat 里面, service 是指一类问题的解决方案,通常我们会默认使用 tomcat 提供的: Tomcat-Standalone 模式的 service 在这种方式下的 service 既给我们提供解析 jsp servlet 的服务, 同时也提供给我们解析静态文本的服务,
3 )、 Connector: Tomcat 都是在容器里面处理问题的, Connector 把从 socket 传递过来的数据, 封装成 Request, 传递给容器来处理。     通常我们会用到两种 Connector, 一种叫 http connectoer 用来传递 http 需求的。 另一种叫 AJP 在我们整合 apache tomcat 工作的时候, apache tomcat 之间就是通过这个协议来互动的。
4 )、  Container:   Container 这个层,包含了 3 种容器: Engin, Host, Context.
   Engin:
收到 service 传递过来的需求, 处理后, 将结果返回给 service( service 是通过 connector 这个媒介来和 Engin 互动的 ).
   Host: Engin
收到 service 传递过来的需求后,不会自己处理, 而是交给合适的 Host 来处理。
Host
在这里就是虚拟主机的意思, 通常我们都只会使用一个主机,既 “localhost” 本地机来处理。
   Context: Host
接到了从 Host 传过来的需求后, 也不会自己处理, 而是交给合适的 Context 来处理。
比如: [url]http://127.0.0.1:8080/exam/index.jsp[/url]
         [url]http://127.0.1:8080/teacher/index.jsp[/url]
   
前者交给 exam 这个 Context 来处理, 后者交给 teacher 这个 Context 来处理。
   context
其实就是一个 web app
5 )、 Compenent:    我们先理解一下容器和组件的关系。
   
需求被传递到了容器里面, 在合适的时候, 会传递给下一个容器处理。
   
而容器里面又盛装着各种各样的组件, 我们可以理解为提供各种各样的增值服务。
   manager:
当一个容器里面装了 manager 组件后,这个容器就支持 session 管理了, 事实上在 tomcat 里面的 session 管理, 就是靠的在 context 里面装的 manager component.
   logger:
当一个容器里面装了 logger 组件后, 这个容器里所发生的事情, 就被该组件记录下来啦! 我们通常会在 logs/ 这个目录下看见 catalina_log.time.txt 以及 localhost.time.txt localhost_examples_log.time.txt 这就是因为我们分别为: engin, host 以及 context(examples) 这三个容器安装了 logger 组件, 这也是默认安装。
   loader: loader
这个组件通常只 context 容器使用, 用来启动 context 以及管理这个 context classloader
    pipline: pipeline
是这样一个东西, 当一个容器决定了要把从上级传递过来的需求交给子容器的时候, 他就把这个需求放进容器的管道 (pipeline) 里面去。
    valve:
阀门 (明天学习内容, 将在下一篇专门介绍 )
 

你可能感兴趣的:(tomcat)