Java Web3-2 - tomcat

https://github.com/heibaiying/Full-Stack-Notes/blob/master/notes/Tomcat_架构解析.md

 

 

https://zhuanlan.zhihu.com/p/40249834

早期,web技术主要用于浏览静态页面

时间发展,用户已经不满足于仅浏览静态页面。用户需要一些交互操作,获取一些动态结果。如果基于HTTP协议实现服务器端软件增强功能太过 复杂,所以需要一些扩展机制来实现用户想要的功能。

早期使用的Web服务器扩展机制是CGI(Common Gateway Interface,公共网关接口)

CGI程序在一定程度上解决了用户需求。不过还存在一些不足之处,如CGI程序编写困难,响应时间较长,以进程方式运行导致性能受限。

1997年,sun公司推出了Servlet技术,作为java阵营的CGI解决方案

 

Servlet

Java Servlet(Java服务器小程序)是一个基于Java技术的Web组件,运行在服务器端,它由Servlet容器所管理,用于生成动态的内容。 Servlet是平台独立的Java类,编写一个Servlet,实际上就是按照Servlet规范编写一个Java类。Servlet被编译为平台独立 的字节码,可以被动态地加载到支持Java技术的Web服务器中运行

 

Servlet容器

Servlet容器 = Servlet引擎,是Web服务器或应用程序服务器的一部分,用于在发送的请求和响应之上提供网络服务,解码基于 MIME的请求,格式化基于MIME的响应。

Servlet没有main方法,不能独立运行,它必须被部署到Servlet容器中,由容器来实例化和调用 Servlet的方法( 如doGet() doPost() ),Servlet容器在Servlet的生命周期内包容和管理Servlet。在JSP技术 推出后,管理和运行Servlet/JSP的容器也称为Web容器

 

tomcat

Tomcat是一个免费的开放源代码的Servlet容器。

Tomcat服务器接受客户请求并做出响应的过程如下,与上图类似:

1)客户端(通常都是浏览器)访问Web服务器,发送HTTP请求。

2)Web服务器接收到请求后,传递给Servlet容器。

3)Servlet容器加载Servlet,产生Servlet实例后,向其传递表示请求和响应的对象。

4)Servlet实例使用请求对象得到客户端的请求信息,然后进行相应的处理。

5)Servlet实例将处理结果通过响应对象发送回客户端,容器负责确保响应正确送出,同时将控制返回给Web服务器。

 

Tomcat的配置

相关推荐
panxianren8 小时前
Bun 1.4 的 bun test --parallel 将 4 秒的测试套件缩短到约 1 秒
java·javascript
“AI国潮设计-小江”10 小时前
《Python+SDXL实战:用ControlNet精准控制“英歌舞翻糖吐司”构图,附批量生成脚本》
开发语言·人工智能·python·prompt·aigc
程序喵大人10 小时前
【C++入门】编译链接模型 - 01 一个 C++ 程序是怎样变成可执行文件的
开发语言·c++·编译链接模型
sunshine22 girl10 小时前
Java学习七 Java 项目实战2-注册业务
java·学习
省钱兄--zs10 小时前
北京24小时自助健身房系统软件开发实战:从架构设计到部署指南
java·数据仓库·spring boot·小程序·需求分析
youdexiang11 小时前
Android录音软件时间关键词检索功能分析
java·人工智能
sunshine22 girl11 小时前
Java学习七 Java 项目实战1-项目创建和主页面搭建
java·开发语言·学习
code2cat12 小时前
Java进阶篇之AtomicStampedReference:引用回到原值,版本戳仍能记住变化
java·cas·并发编程·aba
菜鸟~noob23312 小时前
【电子战】第三季预告—波武器与电子系统强力毁伤
开发语言·数据库·matlab·电子战
惊讶的猫13 小时前
工具选对之后还不够:商城 Agent 的参数与权限治理
开发语言·python