导航:首页 > 文件处理 > tomcat压缩传输

tomcat压缩传输

发布时间:2023-05-07 06:55:25

❶ 什么是tomcat不要百度的。解释的详细点

通俗一点说,tomcat是一个web服务器,我们访问的网站,族乱其实就是一些文件和程序,他们存储和运行在一台主机上,这个主机就是服务器伍穗正,只有腔悔把网站发布到服务器上别的主机才能访问,所以我们在开发网站用tomcat在自己的电脑上建立一个服务器,把网站发布上去就能通过浏览器输入地址访问了

❷ 怎么安装 tomcat的压缩文件

安装 tomcat的压缩文件方法详见:http://jingyan..com/article/4853e1e57e61711909f726ec.html

❸ 如何将tomcat部署到linux

首先,登录tomcat官方网站。下载tomcat软件,一定要下载解压缩版本的。

2
使用Xftp将Tomcat压缩包上传到服务器中。

解压tomcat服务器压缩包

等待解压缩成功。

tomcat服务器运行时是需要JDK支持的,所以必须配置好JDK用到的那些环境变量

编辑/etc下的profile文件,加上如下内容:
输入vim profile

修改tomcat服务器的启动端口

修改将Tomcat服务器启动时使用的端口,例如改成9999

进入tomcat服务器的bin目录,然后执行"./startup.sh"命令启动Tomcat服务器,如下图所示:

查看tomcat服务器的Log信息,看看tomcat服务器是否已经正常启动,进入tomcat服务器下的logs目录,打开catalina.out文件进行查看,如下图所示:

访问Tomcat服务器,如下图所示

可以正常访问了,说明Tomcat服务器已经正常启动成功了。
如果tomcat启动不了,那么最有可能就是启动时使用的端口被其他应用程序占用了,那么可以通过如下的办法进行排查,例如查看9999端口被哪个应用程序占用了。

❹ linux怎么压缩tomcat

先打包tar然后压缩,后来好像tar命令全包了
tar -zvxf tomcat tomcat.zip 似乎是这个格式,你网络看看吧

❺ Tomcat配置实践

要部署使用tomcat,则必须了解tomcat的目录结构以及各目录的作用。这里以tomcat7为例,进入tomcat安装目录下:

前端请求被tomcat直接接收或者由前端的代理,通过HTTP,或者AJP代理给Tomcat,此时请求被tomcat中的connector接收,不同的connector和Engine被service组件关联起来,在一个Engine中定义了许多的虚拟主机,由Host容器定义,每一个Host容器代表一个主机,在各自的Host中,又可以定义多个Context,用此来定义一个虚拟主机中的多个独立的应用程序。

Tomcat Server的结构图如下:

看上去很复杂。其实,大部分都是注释。下面是一个简图说明了各组件之间的关系!

上面列出的比较常用的组件元素,server.xml文件中可定义的元素非常多,包括Server, Service, Connector, Engine, Cluster, Host, Alias, Context, Realm, Valve, Manager, Listener, Resources, Resource, ResourceEnvRef, ResourceLink, WatchedResource, GlobalNameingResources, Store, Transaction, Channel, Membership, Transport, Member, ClusterListener等等。

由以上配置不难看出存在的一个问题。如果我们想要对其中一个应用程序的配置做一些修改,那么就必须重新启动tomcat,那样势必就会影响到另外两个应用程序的正常服务。因此以上配置是不适合线上使用的, 因此需要将其配置为多实例,每个实例只跑一个独立的应用程序,那样我们应用程序之间就不会在互相受到影响。 但是我们将面临这样一竖雹个问题,80端口只能被一个HTTP/1.1 Connector监听,而三个tomcat实例则至少需要3个HTTP/1.1 Connector,这样我们就 需要一个前端代理做分发处理,接收HTTP 80端口的请求,按域名通过每个tomcat实例的AJP/1.3 Connector传递请求 。而前端的代理选择apache,基于这样的思路,我们还可以做到tomcat的负载均衡,而且 apache会将接收的HTTP超文本传输报文重新封装成二进制格式通过AJP/1.3 协议传递给后端的tomcat处理 ,在效率上余指帆也是有明显的提升。

这会让Tomcat启动一个server实例(即一个JVM),它监听在8005端口以接收shutdown命令。各Server的定义不能使用同一个端口,这意味着如果在同一个物理机上启动了多个Server实例,必须配置它们使用不同的端口。这个端口的定义用于为管理员提供一个关闭此实例的便捷途径,因此,管理员可以直接telnet至此端口使用SHUTDOWN命令关闭此实例。不过,基于安全角度的考虑,这通常不允许远程进行。

该元素代表整个容器,是Tomcat实例的顶层元素。由org.apache.catalina.Server接口来定义。它包含一个或多个<Service>元素。并且它不能做为任何元素的子元素。

Service主要用于关联一个引擎和与此引擎相关的连接器,每个连接器通过一个特定的端口和协议接收入站请求交将其转发至关联的引擎进行处理。因此,Service要包含一个引擎、一个或多个连接器。

该元素由org.apache.catalina.Service接口定义,它包含一个<Engine>元素,以及一个或多个<Connector>,这些Connector元素共享用同一个Engine元素。

Engine是Servlet处理器的一个实逗备例,即servlet引擎,默认为定义在server.xml中的Catalina。

每个Service元素只能有一个Engine元素。元素处理在同一个<Service>中所有<Connector>元素接收到的客户请求。由org.apahce.catalina.Engine接口定义。

位于Engine容器中用于接收请求并进行相应处理的主机或虚拟主机。

它由Host接口定义。一个Engine元素可以包含多个<Host>元素。每个<Host>的元素定义了一个虚拟主机。它包含了一个或多个Web应用<Context>。

Context在某些意义上类似于apache中的路径别名,一个Context定义用于标识tomcat实例中的一个Web应用程序。

它由Context接口定义。是使用最频繁的元素。每个<Context>元素代表了运行在虚拟主机上的单个Web应用。一个<Host>可以包含多个<Context>元素。每个web应用有唯一的一个相对应的Context代表web应用自身。servlet容器为第一个web应用创建一个 ServletContext对象。

由Connector接口定义。<Connector>元素代表与客户程序实际交互的组件,它负责接收客户请求,以及向客户返回响应结果。

进入Tomcat的请求可以根据Tomcat的工作模式分为如下两类:

Tomcat应该考虑工作情形并为相应情形下的请求分别定义好需要的连接器才能正确接收来自于客户端的请求。一个引擎可以有一个或多个连接器,以适应多种请求方式。

定义连接器可以使用多种属性,有些属性也只适用于某特定的连接器类型。一般说来,常见于server.xml中的连接器类型通常有4种:

Connector元素共用属性:

HttpConnector元素的属性:

AJP Connector的属性:

即一个service配置多个端口,项目可以通过多个端口访问。 修改tomcat-homeconf下的server.xml,在Service下配置多个<Connector>即可。

在这个应用里,可以用8080端口号访问服务,也可以用8099端口号来访问服务; 服务放置的路径由host决定,上例中服务放在webapps下。

即配置多个service,每个service可以配置多个端口。修改tomcat-homeconf下的server.xml,添加多个Service即可。

注意:Service name、Engine name、appBase,端口号别忘了修改,以免重复。

以上三个service,发布的路径不同,项目分别发布在webapps、webapps1、webapps2下,访问不同的项目的方法:

在$CATALINA_HOME/conf/server.xml配置文件中的Connetctor节点,和连接数相关的参数配置和优化。

Tomcat使用线程来处理接收的每个请求。这个值表示Tomcat可创建的最大的线程数。默认值200。 可以根据机器的时期性能和内存大小调整,一般可以在400-500 。最大可以在800左右。

指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数的请求将不予处理。默认值10。

Tomcat初始化时创建的线程数。默认值4。

一旦创建的线程超过这个值,Tomcat就会关闭不再需要的socket线程。默认值50。

是否反查域名,默认值为true。 为了提高处理能力,应设置为false

网络连接超时,默认值20000,单位:毫秒。设置为0表示永不超时,这样设置有隐患的。 通常可设置为30000毫秒

保持请求数量,默认值100。

输入流缓冲大小,默认值2048 bytes。

压缩传输,取值on/off/force,默认值off。

其中和最大连接数相关的参数为maxThreads和acceptCount。 如果要加大并发连接数,应同时加大这两个参数 web server允许的最大连接数还受制于操作系统的内核参数设置 ,通常Windows是2000个左右,Linux是1000个左右。

配置示例:

Tomcat默认可以使用的内存为128MB,Windows下,在文件{tomcat_home}/bin/catalina.bat,Unix下,在文件$CATALINA_HOME/bin/catalina.sh的前面,增加如下设置:

一般说来,你应该使用物理内存的 80% 作为堆大小。如果本机上有Apache服务器,可以先折算Apache需要的内存,然后修改堆大小。 建议设置为70%;建议设置[初始化内存大小]等于[可以使用的最大内存],这样可以减少频繁分配堆而降低性能。

在$CATALINA_HOME/conf/web.xml中,把listings参数设置成false即可,如下:

参考

WEB请求处理四:Tomcat配置实践

❻ 基于tomcat基础镜像构建各种业务镜像|范例如APP

创建 tomcat-app1 和 tomcat-app2 两个目录,表示基于 tomcat 自定义基础镜像构建出不同业务的 tomcat 应用镜像。这个时候我们就由普通用户来启动tomcat。并且我们使用命令类来启动tomcat(tail -f这样启动的容器就不会受tomcat 的影响)

1、准备tomcat容器的默认显示web页面

1)进入到/opt/dockerfile/web/tomcat/目录下分别创建两个不同的tomcat应用目录一个是app1、app2,这样做的好处事樱敬裤好部署后期不同的业务然后直接基于tomcat的基础镜像即可

2)然后tomcat的压缩包上传上来,因为等会要基于tomcat的server.xml文件修改他的默认web显示页面

3)解压tomcat压缩包

4)然后再将现在解压好的server.xml文件拷贝到/opt/dockerfile/web/tomcat/tomcat-app1目录下,这个server.xml文件决定了容器的tomcat启动之后再什么地方去找web显示页面文件

5)修改server.xml文件,修改它默认的web显示页面的目录,我们这是将他的web显示页面修改为

6)准备自定义web页面,等会好将这个目录下的web页面解压到tomcat容器中的/data/tomcat/webapps中,以后再公司中将WEBserver目录替换成公司的数据目录即可

7)WEBserver目录,并创建一个index.jsp,好做以区别app1和app2应用的web页面

8)再将这个WEBserver文件夹打包,因为等会在dockerfiel中要让ADD参数解压到tomcat容器去,并且打包的时候有个小注意,就是我们是否包含WEBserver这个目录,如果一开始包含的WEBserver这个目录的话,就决定了tomcat访问的方式,是否添加WEBserver的URL。所以包括了就要一直包括,所以到了公司中一定要和开发商量好。千万不要来回变

我们这里是不包稿源含这个WEBserver这个目录

9) 将WEBserver.tar.gz拷贝到/opt/dockerfile/web/tomcat/tomcat-app1目录中,等会好添加到dockerfile文件中

** 2、准备app1业务镜像Dockerfile文件**

3、编辑tomcat 业务1的构建脚本

4、执行构建脚本,开始制作镜像

5、启动tomcat-web:app1容器

6、进入容器通过www普通用户启动tomcat服务

7、浏览器访问检测
http://10.0.0.117:8080/WEBserver/

1、拷贝dockerfile镜像制作文件以及所需文件
制作第二个 tomcat 服务镜像。做的二个业务镜像的时候就不用这么复杂了,而是直接将tomcat-app1的目录拷贝到tomcat-app2即可,因为他们所需的文件都差不多

2、修改app2 的web页面
进入tomcat-app2目录下只需修改index.jsp 即可,因为app2这个业脊简务也是基于 tomcat-basev9.0.37 的基础镜像来制作。和app1的制作过程一样

3、打包app2 业务的web页面压缩包

4、修改构建脚本,区分app2业务的镜像名
我们的dockerfile文件其实已经不用动了,因为多个tomcat业务都是共用tomact的基础镜像。所以只需修改构建脚本即可,将其新的镜像名改为 app2。

5、执行构建镜像脚本,制作新镜像

6、启动app2容器

7、通过浏览器访问检测
http://10.0.0.117:8081/WEBserver/

总结:
以上就是针对java服务的镜像构建以及启动方式

❼ 1 如何优化Tomcat

(1)bin:主要用来存放命令,.bat是windows下,.sh是Linux下
(2)conf:主要用来存放tomcat的一些配置文件
(3)lib:存放tomcat依赖的一些jar包
(4)logs:存放tomcat在运行时产生的日志文件
(5)temp:存放运歼耐困行时产生的临时文件
(6)webapps:存放应用程序
(7)work:存放tomcat运行时编译后的文件,比如JSP编译后的文件

tomcat优化可以有几个方向:配置项的删除,配置参数的修改,jdk参数修改、Tomcat内存优化、Tomcat并发优化、Tomcat缓存优化

web项目中自带的WEB-INF/web.xml,
tomcat自带的conf/web.xml以及conf/server.xml文件。
因为这些xml文件都会被tomcat解析,所以优化方向是将这三类文件中不必要的配置删除。

tomcat在启动时,会将web项目中WEB-INF/web.xml和自己的conf/web.xml进行合并,然后在ContextConfig类下的configureContext()统一解析这些内容:

这个只能是在项目中不需要的配置不要放进去,有过期的配置要及时删除,减少tomcat的解析成本。

这是一个处理静态文件的servlet,如果项目中不需要tomcat进行静态文件的处理,可以将其删掉。

这个servlet是用来编译和执行jsp文件的,如果项目中没有jsp文件,可以将其删掉。

项目中没有jsp,关于jsp下面的映射也可以删除:

文件中提供的mime类型非常多,如果有确定项目中不会涉及到的类型,可以删除其映射配置。

如果不需要展示tomcat的欢迎页,可以将其删掉。

下面是tomcat8.5版本提供的默认listener列表:

作用是在Tomcat初始化时,打印一下Tomcat相关的版本信息以及操作系统和jdk环境亩销信息,可以删掉。

Tomcat启动时,检查APR库,如果存在则加载,这个配置仅当connector的protocol设置为AJP/1.3时有用,如果非AJP/1.3,可以删除。

Java运行环境可能导致某些已知位置的内存泄漏或文件锁定,
提供这些情况的解决方案。

作用于全局资源,通氏念过该监听器,初始化标签中定义的全局JNDI资源;
如果没有该监听器,定义的全局资源都不能使用。
如果不使用GlobalNamingResources定义全局资源,可以删除。

Web应用因thread-local导致的内存泄露而要停止时,该监听器会触发线程池中线程的更新。
只有当Web应用(即Context元素)的属性设置为true时,该监听器才有效。
官方文档对配置的解释为:

GlobalNamingResources可以定义全局资源,可以看出,这个tomcat的默认配置是通过读取$TOMCAT_HOME/ conf/tomcat-users.xml实现的。
tomcat-user.xml用于定义tomcat管理页面相关配置,如果不登录管理界面可以删掉。

官网中对于这个connector有如下描述:
The AJP Connector element represents a Connector component that communicates with a web connector via the AJP protocol. This is used for cases where you wish to invisibly integrate Tomcat into an existing (or new) Apache installation, and you want Apache to handle the static content contained in the web application, and/or utilize Apache's SSL processing.
可知当tomcat需要集成到Apache服务器时才使用这个connector,现在一般都用Nginx代替Apache,所以不使用Apache的话这个也可以删掉。

tomcat默认配置包含如下connector:
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

Realm,可以把它理解成“域”;
Realm提供了一种用户密码与web应用的映射关系,从而达到角色安全管理的作用,tomcat默认的这个realm是和name为UserDatabase的资源绑定的,而该资源在Server元素中使用GlobalNamingResources配置。如果不需要可以删掉。

Valve的意思是“阀门”,不同的Valve有不同的特性,Valve的配置中AccessLogValve的作用是记录其所在容器处理的所有请求,默认配置中的Valve放在Host下,便可以记录该Host处理的所有请求。
AccessLogValve记录的日志就是访问日志,每天的请求会写到一个日志文件里。现在一般记录Nginx访问日志,这个也可以删除。

tomcat是用Java写的,就要运行在jvm上,垃圾处理方式等都要遵循jvm的方式。
tomcat中设置jvm参数在 catalina.sh(Linux)和catalina.bat(windows)中,以JAVA_OPTS变量存储。以catalina.sh为例:

可以在该变量中添加jvm参数,达到减少gc次数等目标,例如根据tomcat所在服务器修改jvm内存大小等。

参数优化主要是优化sever.xml中的配置参数,示例server.xml如下:

port:指定一个端口,这个端口负责监听关闭tomcat的请求。
shutdown:指定向端口发送的命令字符串。
sever配置没什么可优化的。

name:指定service的名字。
service配置没什么可优化的。

port:指定服务器端要创建的端口号,并在这个端口监听来自客户端的请求
minProcessors:服务器启动时创建的处理请求的线程数
maxProcessors:最大可以创建的处理请求的线程数
enableLookups:如果为true,则可以通过调用request.getRemoteHost()进行DNS查询来得到远程客户端的实际主机名,若为false则不进行DNS查询,而是返回其ip地址
redirectPort:指定服务器正在处理http请求时收到了一个SSL传输请求后重定向的端口号
acceptCount:指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数的请求将不予处理
maxConnections:达到这个值之后,将继续接受连接,但是不处理,能继续接受多少根据acceptCount的值
minSpareThreads:最小空闲线程数
connectionTimeout:指定超时的时间数(以毫秒为单位)
官网8.5版本connector使用连接类型如下:

查看Connector源码:

可知默认协议使用的是Http11NioProtocol,即NIO方式。
tomcat默认连接池有限制,可以为connector配置自己的连接池,例如:

在连接池中可以根据项目自定义最大线程数量。

name:属性用于日志和错误信息,在整个Server中应该唯一
defaultHost:defaultHost属性指定了默认的host名称,当发往本机的请求指定的host名称不存在时,一律使用defaultHost指定的host进行处理;因此defaultHost的值,必须与Engine中的一个Host组件的name属性值匹配
没什么可优化的。

name:指定虚拟主机的主机名,一个Engine中有且仅有一个Host组件的name属性与Engine组件的defaultHost属性相匹配;
注:一般情况下,主机名需要是在DNS服务器中注册的网络名,但是Engine指定的defaultHost不需要

appBase:应用程序基本目录,即存放应用程序的目录

unpackWARs:指定了是否将war文件解压,如果为true,则通过解压后的目录运行该Web应用;如果为false,则直接使用WAR文件运行Web应用

autoDeploy:是否自动部署,Tomcat运行期间会用一个线程定时检查,如果有新的web工程会自动部署。
autoDeploy生产环境之下可以改成false,减少tomcat的负担。
autoDeploy有需要注意的点,如果为true,拷贝war到webapp下面,tomcat自动解压并部署。但是停掉tomcat拷贝新的war包过去,tomcat不会解压新包并后覆盖旧目录,因为tomcat直接使用了之前解压过的目录。官网有描述:
If you redeploy an updated WAR file, be sure to delete the expanded directory when restarting Tomcat, so that the updated WAR file will be re-expanded (note that the auto deployer, if enabled, will automatically expand the updated WAR file once the previously expanded directory is removed).

docBase:代表应用程序或war文件存放的路径,这个可以自由指定,例如d:/study

path:

表示此web应用程序的url的前缀,这样请求的url为 http://localhost:8080/path/ **

reloadable:如果为true,则tomcat会自动检测应用程序的/WEB-INF/lib和/WEB-INF/classes目录的变化,自动装载新的应用程序,可以在不重起tomcat的情况下改变应用程序

生产环境中可以把reloadable设置为false。

className:指定Realm使用的类名,此类必须实现org.apache.catalina.Realm接口
没什么可优化的

className:规定了Valve的类型;例如tomcat默认的是AccessLogValve。
directory:指定日志存储的位置,默认日志存储在 TOMCAT_HOME/logs目录下,可以看到如下所示的日志文件。
没什么可优化的。

Tomcat内存优化主要是对 tomcat 启动参数优化,我们可以在 tomcat 的启动脚本 catalina.sh 中设置 java_OPTS 参数。

现公司服务器内存一般都可以加到最大2G ,所以可以采取以下配置:
JAVA_OPTS=’-Xms1024m -Xmx2048m -XX: PermSize=256M -XX:MaxNewSize=256m -XX:MaxPermSize=256m’

配置完成后可重启Tomcat ,通过以下命令进行查看配置是否生效:
首先查看Tomcat 进程号:sudo lsof -i:9027

我们可以看到Tomcat 进程号是 12222 。
查看是否配置生效:sudo jmap – heap 12222
我们可以看到MaxHeapSize 等参数已经生效。

在Tomcat 配置文件 server.xml 中的
<Connector port="9027"
protocol="HTTP/1.1"
maxHttpHeaderSize="8192"
minProcessors="100"
maxProcessors="1000"
acceptCount="1000"
redirectPort="8443"
disableUploadTimeout="true"/>

maxThreads 客户请求最大线程数
minSpareThreads Tomcat初始化时创建的 socket 线程数
maxSpareThreads Tomcat连接器的最大空闲 socket 线程数
enableLookups 若设为true, 则支持域名解析,可把 ip 地址解析为主机名
redirectPort 在需要基于安全通道的场合,把客户请求转发到基于SSL 的 redirectPort 端口
acceptAccount 监听端口队列最大数,满了之后客户请求会被拒绝(不能小于maxSpareThreads )
connectionTimeout 连接超时
minProcessors 服务器创建时的最小处理线程数
maxProcessors 服务器同时最大处理线程数
URIEncoding URL统一编码

compression 打开压缩功能
compressionMinSize 启用压缩的输出内容大小,这里面默认为2KB
compressableMimeType 压缩类型
connectionTimeout 定义建立客户连接超时的时间. 如果为 -1, 表示不限制建立客户连接的时间

❽ tomcat 配置压缩是压缩的什么

下载tomcat解压版,可以去官网下载,
下载完毕后解压,文件路径不要有中文

解压后基本上就可以使用了

如有需要可以配置端口:
打开tomcat目录下conf\server.xml文件:
http默认端口号为80,也就是说在URL中不给出端口号时就表示使用80端口。当然你也可以修改为其它端口号。
当把端口号修改为80后,在浏览器中只需要输入:http://localhost就可以访问Tomcat主页了。

tomcat目录详解:
l bin:该目录下存放的是二进制可执行文件,如果是安装版,那么这个目录下会有两个exe文件:tomcat6.exe、tomcat6w.exe,前者是在控制台下启动Tomcat,后者是弹出UGI窗口启动Tomcat;如果是解压版,那么会有startup.bat和shutdown.bat文件,startup.bat用来启动Tomcat,但需要先配置JAVA_HOME环境变量才能启动,shutdawn.bat用来停止Tomcat;
l conf:这是一个非常非常重要的目录,这个目录下有四个最为重要的文件:
Ø server.xml:配置整个服务器信息。例如修改端口号,添加虚拟主机等;下面会详细介绍这个文件;
Ø tomcatusers.xml:存储tomcat用户的文件,这里保存的是tomcat的用户名及密码,以及用户的角色信息。可以按着该文件中的注释信息添加tomcat用户,然后就可以在Tomcat主页中进入Tomcat Manager页面了;
Ø web.xml:部署描述符文件,这个文件中注册了很多MIME类型,即文档类型。这些MIME类型是客户端与服务器之间说明文档类型的,如用户请求一个html网页,那么服务器还会告诉客户端浏览器响应的文档是text/html类型的,这就是一个MIME类型。客户端浏览器通过这个MIME类型就知道如何处理它了。当然是在浏览器中显示这个html文件了。但如果服务器响应的是一个exe文件,那么浏览器就不可能显示它,而是应该弹出下载窗口才对。MIME就是用来说明文档的内容是什么类型的!
Ø context.xml:对所有应用的统一配置,通常我们不会去配置它。
l lib:Tomcat的类库,里面是一大堆jar文件。如果需要添加Tomcat依赖的jar文件,可以把它放到这个目录中,当然也可以把应用依赖的jar文件放到这个目录中,这个目录中的jar所有项目都可以共享之,但这样你的应用放到其他Tomcat下时就不能再共享这个目录下的Jar包了,所以建议只把Tomcat需要的Jar包放到这个目录下;
l logs:这个目录中都是日志文件,记录了Tomcat启动和关闭的信息,如果启动Tomcat时有错误,那么异常也会记录在日志文件中。
l temp:存放Tomcat的临时文件,这个目录下的东西可以在停止Tomcat后删除!
l webapps:存放web项目的目录,其中每个文件夹都是一个项目;如果这个目录下已经存在了目录,那么都是tomcat自带的。项目。其中ROOT是一个特殊的项目,在地址栏中没有给出项目目录时,对应的就是ROOT项目。http://localhost:8080/examples,进入示例项目。其中examples就是项目名,即文件夹的名字。
l work:运行时生成的文件,最终运行的文件都在这里。通过webapps中的项目生成的!可以把这个目录下的内容删除,再次运行时会生再次生成work目录。当客户端用户访问一个JSP文件时,Tomcat会通过JSP生成Java文件,然后再编译Java文件生成class文件,生成的java和class文件都会存放到这个目录下。
l LICENSE:许可证。
l NOTICE:说明文件。

❾ 如何开启Tomcat服务器的Gzip网页压缩功能

现在主流的浏览器如谷歌浏览器和IE浏览器都支持客户端Gzip,也就是说,在服务器上的网页,传输之前,先使用Gzip压缩再传输给客户端,客户端接收之后由浏览器解压显示,这样虽然稍微占用了一些服务器和客户端的CPU,但是换来的是更高的带宽利用率

❿ 如何设定tomcat启动时jvm内存大小

可以给Java虚拟机设置使用的内存,但是如果你的选择不对的话,虚拟机不会补偿。可通过命令行的方式改变虚拟机使用内存的大小。如下表所示有两个参数用来设置虚拟机使用内存的大小。
参数
描述
-Xms
JVM初始化堆的大小
-Xmx
JVM堆的最大值
这两个值的大小一般根据需要进行设置。初始化堆的大小执行了虚拟机在启动时向系统申请的内存的大小。一般而言,这个参数不重要。但是有的应用程序在大负载的情况下会急剧地占用更多的内存,此时这个参数就是显得非常重要,如果虚拟机启动时设置使用的内存比较小而在这种情况下有许多对象进行初始化,虚拟机就必须重复地增加内存来满足使用。由于这种原因,我们一般把-Xms和-Xmx设为一样大,而堆的最大值受限于系统使用的物理内存。一般使用数据量较大的应用程序会使用持久对象,内存使用有可能迅速地增长。当应用程序需要的内存超出堆的最大值时虚拟机就会提示内存溢出,并且导致应用服务崩溃。因此一般建议堆的最大值设置为可用内存的最大值的80%。
Tomcat默认可以使用的内存为128MB,在较大型的应用项目中,这点内存是不够的,需要调大。
Windows下,在文件/bin/catalina.bat,Unix下,在文件/bin/catalina.sh的前面,增加如下设置:
JAVA_OPTS='-Xms【初始化内存大小】 -Xmx【可以使用的最大内存】'
需要把这个两个参数值调大。例如:
JAVA_OPTS='-Xms256m -Xmx512m'
表示初始化内存为256MB,可以使用的最大内存为512MB。
另外需要考虑的是Java提供的垃圾回收机制。虚拟机的堆大小决定了虚拟机花费在收集垃圾上的时间和频度。收集垃圾可以接受的速度与应用有关,应该通过分析实际的垃圾收集的时间和频率来调整。如果堆的大小很大,那么完全垃圾收集就会很慢,但是频度会降低。如果你把堆的大小和内存的需要一致,完全收集就很快,但是会更加频繁。调整堆大小的的目的是最小化垃圾收集的时间,以在特定的时间内最大化处理客户的请求。在基准测试的时候,为保证最好的性能,要把堆的大小设大,保证垃圾收集不在整个基准测试的过程中出现。
如果系统花费很多的时间收集垃圾,请减小堆大小。一次完全的垃圾收集应该不超过 3-5 秒。如果垃圾收集成为瓶颈,那么需要指定代的大小,检查垃圾收集的详细输出,研究 垃圾收集参数对性能的影响。一般说来,你应该使用物理内存的 80% 作为堆大小。当增加处理器时,记得增加内存,因为分配可以并行进行,而垃圾收集不是并行的。
Tomcat 5常用优化和配置
1、JDK内存优化:
Tomcat默认可以使用的内存为128MB,Windows下,在文件{tomcat_home}/bin/catalina.bat,Unix下,在文件{tomcat_home}/bin/catalina.sh的前面,增加如下设置:
JAVA_OPTS='-Xms[初始化内存大小] -Xmx[可以使用的最大内存]
一般说来,你应该使用物理内存的 80% 作为堆大小。
2、连接器优化:
在tomcat配置文件server.xml中的配置中,和连接数相关的参数有:
maxThreads:
Tomcat使用线程来处理接收的每个请求。这个值表示Tomcat可创建的最大的线程数。默认值150。
acceptCount:
指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数的请求将不予处理。默认值10。
minSpareThreads:
Tomcat初始化时创建的线程数。默认值25。
maxSpareThreads:
一旦创建的线程超过这个值,Tomcat就会关闭不再需要的socket线程。默认值75。
enableLookups:
是否反查域名,默认值为true。为了提高处理能力,应设置为false
connnectionTimeout:
网络连接超时,默认值60000,单位:毫秒。设置为0表示永不超时,这样设置有隐患的。通常可设置为30000毫秒。
maxKeepAliveRequests:
保持请求数量,默认值100。
bufferSize:
输入流缓冲大小,默认值2048 bytes。
compression:
压缩传输,取值on/off/force,默认值off。
其中和最大连接数相关的参数为maxThreads和acceptCount。如果要加大并发连接数,应同时加大这两个参数。web server允许的最大连接数还受制于*作系统的内核参数设置,通常Windows是2000个左右,Linux是1000个左右。
3、tomcat中如何禁止和允许列目录下的文件
在{tomcat_home}/conf/web.xml中,把listings参数设置成false即可,如下:
<servlet>
...
<init-param>
<param-name>listings</param-name>
<param-value>false</param-value>
</init-param>
...
</servlet>
4、tomcat中如何禁止和允许主机或IP地址访问
<Host name="localhost" ...>
...
<Valve className="org.apache.catalina.valves.RemoteHostValve"
allow="*.mycompany.com,www.yourcompany.com"/>
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
deny="192.168.1.*"/>
...
</Host>
服务器的配置
JAVA_OPTS='-server -Xms512m -Xmx768m -XX:NewSize=128m -XX:MaxNewSize=192m -XX:SurvivorRatio=8'

阅读全文

与tomcat压缩传输相关的资料

热点内容
负数的源码如何得出 浏览:558
只有一个服务器怎么查数据 浏览:951
python为什么不用定义变量 浏览:233
文件夹后退以后消失了 浏览:146
金主文bl压缩包百度云 浏览:704
360怎么锁定一个文件夹 浏览:147
优加密卷怎么去查答案 浏览:538
王者荣耀安卓微信区如何扫码上号 浏览:398
招商app申请冻结怎么申请解冻 浏览:442
adspdf 浏览:78
unix命令rename 浏览:866
文件加密了为啥发不出去了 浏览:457
单片机调节马达 浏览:743
镜花pdf 浏览:610
广西民族大学app忘记密码怎么办 浏览:374
学生服务器是什么意思 浏览:533
如何下载快切app 浏览:723
如何将电脑c盘文件加密 浏览:886
嵌入式为什么linux 浏览:553
c语言编译器属于系统软件 浏览:727