本文介绍: webapps)——>从contex,就是index.jsp里面的内容。继承:一个类,可以继承另一个父类子类子类可以重用父类的代码,而且还在不修改代码的情况下,进行扩展。父子关系,工作方式也是从上到下。web———–>http(s)——-访问页面jsp容器—-》html页面当中的java代码翻译——-》执行————-》展示结果lib: tomcat运行库的jar包,一般不动,除非连接第三方—–redis数据库logs:日志文件

tomcat开放源代码web应用服务器。jave代码开发的。
tomcat就是处理动态请求基于java代码的页面开发
可以html当中写入java代码,tomcat可以解析html页面当中的java,执行动态请求
动态页面
机制有问题:不对tomcat进行优化,会出现在:假死、停机。小集群,小服务,小应用使用于tomcat,大并发场景不适合。
1.免费
2、开源可以二次封装
3、可配置型强,可以根据需要进行自定义配置,包括端口号虚拟主机,等等。4、安全性: tomcat自带安全机制,可以配置用户认证、授权、加密传输
5、部署应用非常快捷: tomcat自动部署自动运行。核心组件三个:

———————————————————————————————————————————

1、 web容器:完成web服务器功能,web应用。web———–>http(s)——-访问页面
.———->文件index.jsp
web容器中,封装了一组文件,在这一组文件之中,进行集中化管理。web动态页面
2. servlet容器:名字: catalina,处理servlet代码就是处理web请求(http),以及生成动态内容java类。处理http请求
3、jsp: jsp动态页面防疫成servlet代码,用标准格式展示jsp静态页面。

servlet:
1、处理http请求
2、生产动态内容,为了和数据库交互—–》用户发起的;jsp当中的。
3、会话管理,跟用户在不同请求之间的状态,通过管理,可以在用户访问不同页面时保持用户状态
4、与数据库交互,servlet可以连接数据库,执行查询更新操作。这就是servlet能够生成动态内容的原因。jsp: java server pages。动态页面的开发技术使用jsp标签index.jsphtml页面中插入java代码。

jsp容器—-》html页面当中的java代码翻译——-》执行————-》展示结果。通常<%,开头
%&gt;,结尾。
面向对象:编程范式。思想。客观存在的实体和他们之间的关系,映射计算机程序当中。计算程序组织成这一组相互作用的对象每个对象都有数据(属性)和行为(方法)。
类:定义一组属性方法创建对象实例
封装:对象属性方法捆绑在一块,提供一个接口,可以让其他对象使用
继承:一个类,可以继承另一个类父类子类子类可以重用父类的代码,而且还在不修改代码的情况下,进行扩展多态:不同类的对象对相同的消息,做出不同的响应

功能组件:
connector:负载对外接受和响应请求,是tomcat与外界的交通枢纽。监听端口,也可以接受外界请求,交给container处理container:负责对内处理业务逻辑
Engine:引擎管理虚拟机(service,一个service里面可以包含多个虚拟主机。)可以管理多个虚拟主机,一个service里面只能有一个Engine;
Host:代表一个虚拟机,也可以叫站点context: web应用。包含多个servlet
wrapper:封装器,最底层,每一个wrapper封装一个servlet,负责对象实例创建,执行,销毁。父子关系,工作方式也是从上到下。

1、输入网址,请求发送,请求发送到8080端口,被监听的获得;
2、connector会把请求转发container处理…engine(虚拟主机,你要访问哪一个虚拟主机) .……host(主机站点包含要请求页面的位置。webapps)——&gt;从contex,就是index.jsp里面的内容。–
————–&gt;wrapper(servlet响应解析处理请求)——-jsp翻译
–页面展示
export JAVA_HOME=/usr/java/jdk1.8.0_201-amd64指定jdk安装路径。jdk解释器,类似于shell,各种工具
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jarclasspath:定义类的
export PATH=$JAVA_HOME/bin:$PATH

bin:存放启动关闭tomcat脚本文
conf:主配置文件server.xml配置文件contex.html host默认配置信息tomcat-user.xml :认证用户密码的配置文件web.xml:配置servlet servlet规范标准。
lib: tomcat运行库的jar包,一般不动,除非连接第三方—–redis数据库logs:日志文件
webapps: web应用部署默认目录
workctomcat的工作目录存放jsp编译之后的class文件,清楚tomcat缓存,就是删work目录
JVM:就是java的虚拟机,是java应用程序计算运行的核心组件,jvm负载编译后的java字节码(.class文件)

JVM优化:

PS Eden Space :堆内存:存储创建对象
Ps Old Gen:堆内存存储时间存活的对象

PS old Gen:堆内存存储时间存活的对象
Ps Ssurvivor Space:堆内存:存在创建之后,生命周期较短的对象。
Code Cache:非堆内存:存储已经编译的代码
compressed Class Space:非堆内存:存储已经压缩的类。
Metaspace:非堆内存,存储类的元数据

JAVA_OPTS=”$JAVA_OPTS –server -Xms2048m -Xmx2048m -xmn768m -XX:ParallelGCThreads=2 -XX:PermSize=1024m-XX:MaxPermSize=1024m -Djava.awt.headless=true -XX:+DisableExplicitGc”
server:第一个参数指定内存池,一定放在第一个。
-Xms2048m:初始java堆的大小。分配JVM的最小内存,看cpu:cpu性能高,这个值
可以设高一点

-Xmx2048m: JAVA堆最大能多大,jvm的最大内存。和硬件内存挂钩。根据官方文档
起始值和最大值保持—致。XMS和XMX设为—样
的,内存可以设为物理内存的一般。
-Xmn768m:新生代的内存大小。官方推荐为了整个堆大小的3/8.
-XX:ParallelGCThreads=2: 配置并行收集器线程数,同时可以有多少个线程进行垃圾回收
-XX:PermSize:设置持久代内存的大小默认是物理内存的1/4。
-XX:MaxPermSize=1024m:最大的非堆内存的大小默认也是物理内存的1/4;-XX:PermSize=1024m -XX:MaxPermSize=1024m
非堆内存是不会被垃圾回收机制处理的,-X.PermSize持久代内存与最大非堆内存不能超出操作系统可用的内存。设置成一样大,可以减轻伸缩堆大小的压力。

-Djava.awt.headless=true:避免在linux环境下,web不能正常打开以正常显示图片
-XX:+DisableExplicitGC”:避免jvm空间大起大落,影响系统响应时间。响应速度会很慢。
堆区当中:新生代中生代老年代
每一个新建的对象占用空间,就是新生代。
java垃圾回收机制对堆区进行资源回收,新生代中没有被回收的资源,就是中生代。中生代没有被回收,就是老年代
jvm大小:新生代+中生代+老年代+永久代。

原文地址:https://blog.csdn.net/m0_58164957/article/details/132268732

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

如若转载,请注明出处:http://www.7code.cn/show_8041.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注