专栏首页java技术大本营tomcat学习|tomat中的server.xml的学习

tomcat学习|tomat中的server.xml的学习

开头说两句

小刀博客: https://www.lixiang.red 小刀公众号: 程序员学习大本营

学习背景

学习还要啥背景,技多不压身,Come on 上篇我们讲到了tomat的目录结构: https://www.lixiang.red/articles/2019/08/04/1564907616303.html

学习准备

server.xml Tomcat本质上是一个Servlet容器,Catalina就是Servlet容器,如上文我们提到的Coyote, Jasper,EL , Naming, Juli等等都是为了Catalina服务,而catalina的初始就是我们常用的server.xml,所以我们今天就从server.xml来进入catalina的学习

server.xml

以前我们可能只改过connector中的端口,如果做部署的话,也会修改host下面的东东

通过server.xml 我们可以看到这么一个层级关系

server包含service

service 包含 connector 和 engine engine 包含有realm 和 host host 包含 context(默认的server.xml里面没有)但是我们在实际发布时会配置上这个 context 包含wrapper

组件基本解释

  • Server 表示整个Servlet容器,Tomcat运行时,只有唯一一个Server实例
  • Service 一个或多个connector的集合,这些connector 共享同一个container来处理其请求. 在同一个tomcat实例中可以包含多个service , service之间彼此独立.
  • Connector Tomcat链接器,用于临听转化socket请求,将socket请求转交给Container来处理
  • Engine Engine 是指整个的servlet引擎, Engine 是最高级的Container,虽然不是直接处理请求的位置,但是它是请求处理的入口
  • Host 虚拟主机,与一个服务器的网络名有关,客户端可以用这个名称去连接服务器. 这个名称必须要在DNS上注册.
  • Context 从字面上来就是上下文,放tomcat中,上下文就代表着一个完整的web应用
  • Wrapper Wrapper 作为一类容器,用于表示web 应用中定义的servlet

最后说两句

server.xml 是我们能够与tomcat服务直接交互的地方,我们可以通过server.xml配置tomcat的绝大多数属性. 本文只是讲了一些基础的组件和功能,更多的还需要自己去学习. 大家在学习过程中遇到什么问题,可以加小刀微信一起讨论交流: best396975802

本文分享自微信公众号 - java技术大本营(java-ideashare)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-08-13

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 如何实现一个Servlet中的多个功能

    前言:唉,打脸了,前脚刚说过要跟Servlet正式告别,后脚这不又来了,哈哈,总结出一点东西,纠结了一下还是做个分享吧,学习知识比面子重要,对吧,下回再也不约S...

    泰斗贤若如
  • Spring Boot Web 应用性能优化

    记录请求的信息(如:请求方法、请求头以及请求路径等),其计算的过程存在一定的开销,使用场景罕见,故可选择关闭。

    Criss@陈磊
  • HttpServletResponse response详解

    response是Servlet.service方法的一个参数,类型为javax.servlet.http.HttpServletResponse。在客户端发出...

    Java编程指南
  • 匹马行天下——没有无缘无故的爱和恨,没有无缘无故的编程

    想这世间,没有无缘无故的爱,也没有无缘无故的恨,一切都有有原因的,我想编程亦是如此,技术时常更新,程序员时常学习,随着时间的推移,程序员发际线的增高,生活无处不...

    泰斗贤若如
  • 一篇文章让你弄懂SpringMVC 拦截器

    第一种方式是要定义的Interceptor类要实现了Spring的HandlerInterceptor 接口

    Java编程指南
  • SpringBoot与SpringMVC的区别是什么?

    Spring 框架就像一个家族,有众多衍生产品例如 boot、security、jpa等等。但他们的基础都是Spring 的 ioc和 aop ioc 提供了依...

    阮键
  • java学习笔记(中级篇)—单例模式

    我们知道JVM的内存资源是很宝贵的,尤其是在程序很庞大的时候,尽量减少创建不必要的对象是能够很大程度的减少内存的开销。单例模式的好处就是能够节省内存,限制了实例...

    chlinlearn
  • 一篇文章彻底弄懂Session和Cookie

      在WEB开发中,服务器可以为每个用户浏览器创建一个会话对象(session对象),注意:一个浏览器独占一个session对象(默认情况下)。因此,在需要保存...

    Java编程指南
  • SpringBoot错误页配置及项目全局错误处理

    1> 用户体验:当我们请求路径写错时,浏览器显示一个"Whitelabel Error Page",对用户来说体验不友好。

    Java编程指南
  • SpringMVC源码深度解析之Servlet与SpringMVC关系

    SpringServletContainerInitializer的作用:加载一些第三方的依赖信息

    须臾之余

扫码关注云+社区

领取腾讯云代金券