打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
郑州Java学习教程之Tomcat入门知识点梳理

Jrebel公布了一份2020 Java生态系统报告,调查结果显示,有61%的开发者们使用的主要应用服务器还是Tomcat。很多初学Java的人不知道怎么入门Tomcat,接下来的郑州Java学习教程中,小编就给大家做一个简单的知识梳理。

Tomcat是什么

Tomcat是由Apache开发的一个Servlet容器,实现了对ServletJSP的支持,并提供了作为Web服务器的一些特有功能,如Tomcat管理和控制平台、安全域管理和Tomcat阀等。Tomcat包含了一个配置管理工具,也可以通过编辑XML格式的配置文件来进行配置。

Tomcat重要目录

/bin - Tomcat 脚本存放目录(如启动、关闭脚本)。 *.sh 文件用于 Unix 系统; *.bat 文件用于 Windows 系统。

/conf - Tomcat 配置文件目录。

/logs - Tomcat 默认日志目录。

/webapps - webapp 运行的目录。

Tomcat常见组件

1.服务器(server

实例,通常一个JVM只能包含一个实例,一般情况下,一个物理服务器可以启动多个JVM,从而启动多个实例,但一般不这么做

2.服务(service)

一个服务组件通常包含一个引擎和此引擎相关联的一个或多个链接服务器

3.连接器(connectors)

一个引擎能配置多个连接器但是每个连接器的端口不能冲突同时,Tomcat也支持AJP JSERVJK2连接器,实现让Apache反向代理到后端服务器的非常高效的传输协议

4.引擎

可以自己接收用户的http请求,并构建响应报文,而且可以在内部处理java程序的整个套间 。

5.主机

6.上下文

7.阀门,能够过滤也可以做访问控制。

8.日志记录器

9.领域(Realm),用来实现用户的认证和授权。

任何Tomcat实例就是一个server,而一个server内部要想能够解析JSP页面转义编译serlet程序,要靠其引擎来实现。而引擎才是真正意义上执行JSP代码的容器,都是Tomcat用类来描述这些组件的。同时,为了接受用户的请求,需要基于connector组件,所谓监听的套接字的程序,能够接手用户的请求,被称为连接器。一个server内部可以完全运行N个引擎,无非就是运行多个虚拟机而已。

Tomcat的安装

查看文件:

# cat /usr/local/tomcat/conf/server.xml

Listener为侦听器,通常实现tomcat内部进行通信的,可在各组件之间完成通信

<Serverport="8005" shutdown="SHUTDOWN">

  <Listener className="org.apache.catalina.core.AprLifecycleListener"SSLEngine="on" />

  <Listener className="org.apache.catalina.core.JasperListener"/>

  <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener"/>

  <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>

  <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener"/>

全局命名资源,方便全局引用,所以为其起完名称后可以随便调用的

  <GlobalNamingResources>

    <Resource name="UserDatabase"auth="Container"

             type="org.apache.catalina.UserDatabase"

              description="User databasethat can be updated and saved"

             factory="org.apache.catalina.users.MemoryUserDatabaseFactory"

              pathname="conf/tomcat-users.xml" />            #其调用tomcat-user.xml配置文件进行用户认证

 </GlobalNamingResources>

服务类组件配置信息,将连接器关联至引擎上

<Servicename="Catalina">

   <Connector port="8080" protocol="HTTP/1.1"                   #所在监听端口,以及协议版本号              

   connectionTimeout="20000"                         #连接超时时间,单位毫秒              

   redirectPort="8443" />                            #必要的时候可以做重定向,定义在8443

       <Connector port="8443"protocol="HTTP/1.1" SSLEnabled="true"        #端口监听在8443,协议http1.1              

       maxThreads="150" scheme="https" secure="true"            #最大线程,协议版本,安全的              

       clientAuth="false" sslProtocol="TLS" />                  #不验证客户端 ssl协议用的是tls

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

   <Engine name="Catalina" defaultHost="localhost">                       #引擎,名为catalina

     <RealmclassName="org.apache.catalina.realm.LockOutRealm">       

       <RealmclassName="org.apache.catalina.realm.UserDatabaseRealm"              

       resourceName="UserDatabase"/>      </Realm>

    <Host name="localhost"  appBase="webapps"                       #应用程序存放的位置,相对路径

           unpackWARs="true" autoDeploy="true">                     #如果是war文件格式,是否解压,是否自动部署

         #定义阀门,java中类的记录方式,当前所处域名反过来写的记录方式        

 <ValveclassName="org.apache.catalina.valves.AccessLogValve"directory="logs"

              prefix="localhost_access_log." suffix=".txt"         #日志的命名 suffix表示时间戳              

              pattern="%h %l %u %t "%r" %s %b" />        #访问日志的格式      

           </Host>    

       </Engine>  

   </Service>

</Server>

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Tomcat 配置文件
tomcat关闭后重启,SESSION 仍然有效的处理方法
Linux下配置tomcat + apr + native应对高并发
web服务器并发优化(nginx+多实例tomcat负载均衡)(另附:安装包和文档)
HTTP2.0学习 与 Nginx和Tomcat配置HTTP2.0
Tomcat 有关问题: Cannot serialize session attribute XXX for .的解决方法
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服