容器理解之Tomcat和Apache的恩恩怨怨

2024-02-10 06:30

本文主要是介绍容器理解之Tomcat和Apache的恩恩怨怨,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

写在前面:
首先讲到web项目,可能更多的人会想到tomcat,一般我们做一些java web项目的时候,会经常用到这个,其实tomcat简单讲是一个中间件,web容器(你也可以理解为web应用服务器),他的目的主要是针对http请求和响应的。
tomcat核心作用
开启监听端口监听用户的请求,解析用户发来的http请求然后访问到你指定的应用系统,然后你返回的页面经过tomcat返回给用户。广泛应用在jsp,html,php,asp等。
简单举例
比如你在百度输入一行内容搜索,那么百度服务器如何处理这个请求呢?
他需要创建servlet来处理,servlet其实就是java程序,只是在服务器端的java程序,servlet通过配置文件拦截你的请求,并进行相应处理,然后展示给你相应界面,那么servlet如何创建? 这时候tomcat用到了,它就是帮助你创建servlet的东西,所以也称web容器,没有它,没法运行web项目。
说了这么多大家还是有点懵,肯定还有人问Apaches又是干什么的,那么问题就来了其实他们两个侧重方向不一。
Tomcat更侧重应用服务器,相当于apache的一个扩展,也可以脱离apache独立运行的。支持JSP和servlet .
Apache 是大的概念,web服务器,侧重于HTTP serveer只只支持html静态页面,对PHP,ASP,JSP动态页面就不行。

重点来了,联系生活

下面就举个实际例子给大家来理解吧。
Apache就是一辆大卡车,tomcat是一个水桶,html就好比砖头,jsp,php,asp好比是水。
在这里插入图片描述
那么就很清晰了Apache不好直接装水,但是可以装一些硬货,而tomcat也不是说一定要依赖apache,可以单独存在,其实水桶也是可以装砖头的,但是相对来说显得不那么合适。

但是人们经常就会将两个集合在一起,访问静态页面(html)的时候就直接用apache,可以减少tomcat的负担,解析动态(jsp,asp,php)的东西时候用tomcat,达到动静结合,资源合理分配。

那么刚才的例子也一样,水是动的,砖头的静的,如果你想要把水和砖头都放在一个运行环境中,你就会用水桶把水装好放车上,在把砖头也放车上,这样就可以做到资源空间合理分配应用啦。

我这样解析不知各位客官是否清晰了,喜欢的话麻烦给个小心心或者关注哈哟。

这篇关于容器理解之Tomcat和Apache的恩恩怨怨的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/696364

相关文章

深入理解Mysql OnlineDDL的算法

《深入理解MysqlOnlineDDL的算法》本文主要介绍了讲解MysqlOnlineDDL的算法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小... 目录一、Online DDL 是什么?二、Online DDL 的三种主要算法2.1COPY(复制法)

全网最全Tomcat完全卸载重装教程小结

《全网最全Tomcat完全卸载重装教程小结》windows系统卸载Tomcat重新通过ZIP方式安装Tomcat,优点是灵活可控,适合开发者自定义配置,手动配置环境变量后,可通过命令行快速启动和管理... 目录一、完全卸载Tomcat1. 停止Tomcat服务2. 通过控制面板卸载3. 手动删除残留文件4.

Java JUC并发集合详解之线程安全容器完全攻略

《JavaJUC并发集合详解之线程安全容器完全攻略》Java通过java.util.concurrent(JUC)包提供了一整套线程安全的并发容器,它们不仅是简单的同步包装,更是基于精妙并发算法构建... 目录一、为什么需要JUC并发集合?二、核心并发集合分类与详解三、选型指南:如何选择合适的并发容器?在多

python语言中的常用容器(集合)示例详解

《python语言中的常用容器(集合)示例详解》Python集合是一种无序且不重复的数据容器,它可以存储任意类型的对象,包括数字、字符串、元组等,下面:本文主要介绍python语言中常用容器(集合... 目录1.核心内置容器1. 列表2. 元组3. 集合4. 冻结集合5. 字典2.collections模块

Spring Boot中获取IOC容器的多种方式

《SpringBoot中获取IOC容器的多种方式》本文主要介绍了SpringBoot中获取IOC容器的多种方式,包括直接注入、实现ApplicationContextAware接口、通过Spring... 目录1. 直接注入ApplicationContext2. 实现ApplicationContextA

linux配置podman阿里云容器镜像加速器详解

《linux配置podman阿里云容器镜像加速器详解》本文指导如何配置Podman使用阿里云容器镜像加速器:登录阿里云获取专属加速地址,修改Podman配置文件并移除https://前缀,最后拉取镜像... 目录1.下载podman2.获取阿里云个人容器镜像加速器地址3.更改podman配置文件4.使用po

k8s容器放开锁内存限制问题

《k8s容器放开锁内存限制问题》nccl-test容器运行mpirun时因NCCL_BUFFSIZE过大导致OOM,需通过修改docker服务配置文件,将LimitMEMLOCK设为infinity并... 目录问题问题确认放开容器max locked memory限制总结参考:https://Access

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

深入理解go中interface机制

《深入理解go中interface机制》本文主要介绍了深入理解go中interface机制,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录前言interface使用类型判断总结前言go的interface是一组method的集合,不

IDEA中配置Tomcat全过程

《IDEA中配置Tomcat全过程》文章介绍了在IDEA中配置Tomcat的六步流程,包括添加服务器、配置部署选项、设置应用服务器及启动,并提及Maven依赖可能因约定大于配置导致问题,需检查依赖版本... 目录第一步第二步第三步第四步第五步第六步总结第一步选择这个方框第二步选择+号,找到Tomca