前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >简述 Tomcat

简述 Tomcat

作者头像
Demo_Null
发布2020-09-28 11:25:01
7980
发布2020-09-28 11:25:01
举报
文章被收录于专栏:Java 学习Java 学习

1.1 Tomcat 简介

1.1.1 概述

  Tomcat 最初是由 Sun 的软件架构师詹姆斯·邓肯·戴维森开发的。后来他帮助将其变为开源项目,并由 Sun 贡献给 Apache 软件基金会。由于大部分开源项目 O’Reilly 都会出一本相关的书,并且将其封面设计成某个动物的素描,因此他希望将此项目以一个动物的名字命名。因为他希望这种动物能够自己照顾自己,最终,他将其命名为 Tomcat。而 O’Reilly 出版的介绍 Tomcat 的书籍的封面也被设计成了一个公猫的形象。进而 Tomcat 的 Logo 兼吉祥物也被设计为一只公猫。   Tomcat 服务器是一个免费的开放源代码的 Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试 JSP 程序的首选。对于一个初学者来说,可以这样认为,在一台机器上配置好 Apache 服务器,可利用它响应 HTML 页面的访问请求。实际上 Tomcat 是 Apache 服务器的扩展,但运行时它是独立运行的,所以当你运行 Tomcat 时,它实际上作为一个与 Apache 独立的进程单独运行的。   Apache 为 HTML 页面服务,而 Tomcat 实际上运行 JSP 页面和 Servlet。另外,Tomcat 和 IIS 等 Web 服务器一样,具有处理 HTML 页面的功能,另外它还是一个 Servlet 和 JSP 容器,独立的 Servlet 容器是 Tomcat 的默认模式。不过,Tomcat 处理静态 HTML 的能力不如 Apache 服务器。

1.1.2 Tomcat 组件说明

  Tomca 的心脏是两个组件:Connector 和 Container(Engine,Host,Context,Wrapper)。一个Container 可以选择多个 Connecter,多个 Connector 和一个 Container 就形成了一个 Service。Service 可以对外提供服务,而 Server 服务器控制整个 Tomcat 的生命周期。

在这里插入图片描述
在这里插入图片描述

顶级组件 Server   服务器(Server):表示一个正在 JVM 运行的 Tomcat 实例;Server 代表整个 catalina Servlet 容器;包含一个或多个 Service 子容器。

顶级组件 Service    服务(Server) 代表 Tomcat 实例本身,Service 则代表 Tomcat 中一组处理请求,提供服务的组件。包括多个 Connector 和一个 Container。

Connector    Connector 是客户端连接到Tomcat容器的服务点,它为引擎提供协议服务来将引擎与客户端各种协议隔离开来,如 HTTP、HTTPS、AJP 协议。

Container    Container 用于封装和管理 Servlet,以及具体处理 Request 请求;包含 4 大请求处理组件:引擎(engine)、虚拟主机、上下文(context)组件。

其他组件    Tomcat 还有其它重要的组件,如安全组件 security、logger、session、mbeans、naming 等其它组件。这些组件共同为 Connector 和 Container 提供必要的服务。

1.2 Tomcat 的使用

① 下载:点击 Tomcat 下载 , 亦可关注文末公众号回复 Tomcat 获取

在这里插入图片描述
在这里插入图片描述

② 安装:直接解压即可,注意目录中不要包含中文

在这里插入图片描述
在这里插入图片描述

③ 启动:bin/startup.bat,双击运行该文件即可,亦可命令行 ./startup.bat 启动

在这里插入图片描述
在这里插入图片描述

④ 使用浏览器访问:localhost:8080,见到如下页面即启动成功

在这里插入图片描述
在这里插入图片描述

⑤ 关闭:bin/shutdown.bat,双击运行该文件即可,亦可命令行 ./shutdown.bat 关闭

在这里插入图片描述
在这里插入图片描述

1.3 常见错误

1.3.1 一闪而过

  双击启动后,黑窗口一闪而过,使用命令行启动 tomcat,查看报错信息。这种情况一般是 JAVA_HOME 配置错误导致的,正确配置 JAVA_HOME 就可以解决。

在这里插入图片描述
在这里插入图片描述

1.3.2 无法创建 Java 虚拟机

  这个可能是 jdk 与 tomcat 版本不一致导致的,查找与 jdk 对应 tomcat 的版本再安装尝试一下。

在这里插入图片描述
在这里插入图片描述

1.3.3 端口占用

① 查看占用端口的程序 netstat -ano | grep 8080

在这里插入图片描述
在这里插入图片描述

② 强杀进程 taskkill /pid PID /f 其中 /f 表示强制关闭该进程

1.4 Tomcat 配置

1.4.1 环境变量

① 创建系统变量 CATALINA_HOME,变量值为 Tomcat 的解压路径。

在这里插入图片描述
在这里插入图片描述

② 配置 path,将 %CATALINA_HOME%\bin%CATALINA_HOME%\lib%CATALINA_HOME%\lib\servlet-api.jar 都配入其中

在这里插入图片描述
在这里插入图片描述

③ 验证是否配置成功,启动命令行执行 startup.bat 能够启动 tomcat 则配置成功

在这里插入图片描述
在这里插入图片描述

1.4.2 默认端口修改

conf\server.xml 中找到如下配置,修改 port

代码语言:javascript
复制
<Connector port="8080" protocol="HTTP/1.1"
            connectionTimeout="20000"
            redirectPort="8443" />
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-06-13 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.1 Tomcat 简介
    • 1.1.1 概述
      • 1.1.2 Tomcat 组件说明
      • 1.2 Tomcat 的使用
      • 1.3 常见错误
        • 1.3.1 一闪而过
          • 1.3.2 无法创建 Java 虚拟机
            • 1.3.3 端口占用
            • 1.4 Tomcat 配置
              • 1.4.1 环境变量
                • 1.4.2 默认端口修改
                相关产品与服务
                容器服务
                腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档